@tdengine/websocket 3.1.9 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/lib/example/all_type_query.js +26 -22
  2. package/lib/example/all_type_stmt.js +22 -20
  3. package/lib/example/basicBatchTmq.js +14 -14
  4. package/lib/example/basicSchemaless.js +11 -11
  5. package/lib/example/basicSql.js +10 -10
  6. package/lib/example/basicStmt.js +3 -3
  7. package/lib/example/basicTmq.js +8 -9
  8. package/lib/index.d.ts +1 -1
  9. package/lib/index.d.ts.map +1 -1
  10. package/lib/index.js +1 -1
  11. package/lib/src/client/wsClient.d.ts +3 -2
  12. package/lib/src/client/wsClient.d.ts.map +1 -1
  13. package/lib/src/client/wsClient.js +66 -40
  14. package/lib/src/client/wsConnector.d.ts.map +1 -1
  15. package/lib/src/client/wsConnector.js +40 -14
  16. package/lib/src/client/wsConnectorPool.d.ts.map +1 -1
  17. package/lib/src/client/wsConnectorPool.js +29 -14
  18. package/lib/src/client/wsEventCallback.d.ts.map +1 -1
  19. package/lib/src/client/wsEventCallback.js +6 -4
  20. package/lib/src/client/wsResponse.d.ts.map +1 -1
  21. package/lib/src/client/wsResponse.js +6 -2
  22. package/lib/src/common/config.d.ts +5 -3
  23. package/lib/src/common/config.d.ts.map +1 -1
  24. package/lib/src/common/config.js +15 -5
  25. package/lib/src/common/constant.d.ts +11 -1
  26. package/lib/src/common/constant.d.ts.map +1 -1
  27. package/lib/src/common/constant.js +48 -40
  28. package/lib/src/common/log.d.ts +1 -1
  29. package/lib/src/common/log.d.ts.map +1 -1
  30. package/lib/src/common/log.js +9 -7
  31. package/lib/src/common/reqid.d.ts.map +1 -1
  32. package/lib/src/common/reqid.js +7 -7
  33. package/lib/src/common/taosResult.d.ts.map +1 -1
  34. package/lib/src/common/taosResult.js +46 -27
  35. package/lib/src/common/ut8Helper.d.ts.map +1 -1
  36. package/lib/src/common/ut8Helper.js +8 -8
  37. package/lib/src/common/utils.d.ts.map +1 -1
  38. package/lib/src/common/utils.js +17 -16
  39. package/lib/src/common/wsError.d.ts.map +1 -1
  40. package/lib/src/common/wsError.js +3 -3
  41. package/lib/src/common/wsOptions.d.ts +1 -1
  42. package/lib/src/index.d.ts +3 -3
  43. package/lib/src/index.d.ts.map +1 -1
  44. package/lib/src/sql/wsProto.d.ts.map +1 -1
  45. package/lib/src/sql/wsRows.d.ts +3 -3
  46. package/lib/src/sql/wsRows.d.ts.map +1 -1
  47. package/lib/src/sql/wsRows.js +4 -2
  48. package/lib/src/sql/wsSql.d.ts +5 -5
  49. package/lib/src/sql/wsSql.d.ts.map +1 -1
  50. package/lib/src/sql/wsSql.js +23 -15
  51. package/lib/src/stmt/FieldBindParams.d.ts +9 -0
  52. package/lib/src/stmt/FieldBindParams.d.ts.map +1 -0
  53. package/lib/src/stmt/FieldBindParams.js +13 -0
  54. package/lib/src/stmt/wsColumnInfo.d.ts +12 -0
  55. package/lib/src/stmt/wsColumnInfo.d.ts.map +1 -0
  56. package/lib/src/stmt/wsColumnInfo.js +17 -0
  57. package/lib/src/stmt/wsParams1.d.ts +14 -0
  58. package/lib/src/stmt/wsParams1.d.ts.map +1 -0
  59. package/lib/src/stmt/wsParams1.js +300 -0
  60. package/lib/src/stmt/wsParams2.d.ts +14 -0
  61. package/lib/src/stmt/wsParams2.d.ts.map +1 -0
  62. package/lib/src/stmt/wsParams2.js +203 -0
  63. package/lib/src/stmt/wsParamsBase.d.ts +45 -0
  64. package/lib/src/stmt/wsParamsBase.d.ts.map +1 -0
  65. package/lib/src/stmt/wsParamsBase.js +220 -0
  66. package/lib/src/stmt/wsProto.d.ts +13 -1
  67. package/lib/src/stmt/wsProto.d.ts.map +1 -1
  68. package/lib/src/stmt/wsProto.js +206 -2
  69. package/lib/src/stmt/wsStmt.d.ts +6 -16
  70. package/lib/src/stmt/wsStmt.d.ts.map +1 -1
  71. package/lib/src/stmt/wsStmt.js +0 -201
  72. package/lib/src/stmt/wsStmt1.d.ts +30 -0
  73. package/lib/src/stmt/wsStmt1.d.ts.map +1 -0
  74. package/lib/src/stmt/wsStmt1.js +206 -0
  75. package/lib/src/stmt/wsStmt2.d.ts +37 -0
  76. package/lib/src/stmt/wsStmt2.d.ts.map +1 -0
  77. package/lib/src/stmt/wsStmt2.js +284 -0
  78. package/lib/src/stmt/wsTableInfo.d.ts +17 -0
  79. package/lib/src/stmt/wsTableInfo.d.ts.map +1 -0
  80. package/lib/src/stmt/wsTableInfo.js +54 -0
  81. package/lib/src/tmq/config.d.ts.map +1 -1
  82. package/lib/src/tmq/config.js +2 -2
  83. package/lib/src/tmq/constant.d.ts.map +1 -1
  84. package/lib/src/tmq/constant.js +28 -28
  85. package/lib/src/tmq/tmqResponse.d.ts.map +1 -1
  86. package/lib/src/tmq/tmqResponse.js +31 -17
  87. package/lib/src/tmq/wsTmq.d.ts +2 -2
  88. package/lib/src/tmq/wsTmq.d.ts.map +1 -1
  89. package/lib/src/tmq/wsTmq.js +32 -30
  90. package/lib/test/bulkPulling/cloud.tmq.test.js +11 -11
  91. package/lib/test/bulkPulling/decimal.test.js +50 -26
  92. package/lib/test/bulkPulling/log.test.js +8 -8
  93. package/lib/test/bulkPulling/queryTables.test.js +255 -49
  94. package/lib/test/bulkPulling/schemaless.test.js +34 -34
  95. package/lib/test/bulkPulling/sql.test.js +108 -66
  96. package/lib/test/bulkPulling/stmt1.func.test.d.ts +2 -0
  97. package/lib/test/bulkPulling/stmt1.func.test.d.ts.map +1 -0
  98. package/lib/test/bulkPulling/{stmt.func.test.js → stmt1.func.test.js} +128 -116
  99. package/lib/test/bulkPulling/stmt1.type.test.d.ts +2 -0
  100. package/lib/test/bulkPulling/stmt1.type.test.d.ts.map +1 -0
  101. package/lib/test/bulkPulling/stmt1.type.test.js +399 -0
  102. package/lib/test/bulkPulling/stmt2.func.test.d.ts +2 -0
  103. package/lib/test/bulkPulling/stmt2.func.test.d.ts.map +1 -0
  104. package/lib/test/bulkPulling/stmt2.func.test.js +543 -0
  105. package/lib/test/bulkPulling/stmt2.type.test.d.ts +2 -0
  106. package/lib/test/bulkPulling/stmt2.type.test.d.ts.map +1 -0
  107. package/lib/test/bulkPulling/{stmt.type.test.js → stmt2.type.test.js} +136 -49
  108. package/lib/test/bulkPulling/tmq.test.js +225 -31
  109. package/lib/test/bulkPulling/utils.test.js +2 -2
  110. package/lib/test/bulkPulling/wsConnectPool.test.js +20 -20
  111. package/lib/test/utils.d.ts.map +1 -1
  112. package/lib/test/utils.js +130 -129
  113. package/package.json +1 -1
  114. package/readme.md +1 -0
  115. package/lib/src/stmt/wsParams.d.ts +0 -41
  116. package/lib/src/stmt/wsParams.d.ts.map +0 -1
  117. package/lib/src/stmt/wsParams.js +0 -428
  118. package/lib/test/bulkPulling/stmt.func.test.d.ts +0 -2
  119. package/lib/test/bulkPulling/stmt.func.test.d.ts.map +0 -1
  120. package/lib/test/bulkPulling/stmt.type.test.d.ts +0 -2
  121. package/lib/test/bulkPulling/stmt.type.test.d.ts.map +0 -1
@@ -4,57 +4,60 @@ const wsConnectorPool_1 = require("../../src/client/wsConnectorPool");
4
4
  const config_1 = require("../../src/common/config");
5
5
  const log_1 = require("../../src/common/log");
6
6
  const wsSql_1 = require("../../src/sql/wsSql");
7
- let dns = 'ws://localhost:6041';
7
+ const wsStmt1_1 = require("../../src/stmt/wsStmt1");
8
+ let dns = "ws://localhost:6041";
8
9
  (0, log_1.setLevel)("debug");
9
10
  beforeAll(async () => {
10
11
  let conf = new config_1.WSConfig(dns);
11
- conf.setUser('root');
12
- conf.setPwd('taosdata');
12
+ conf.setUser("root");
13
+ conf.setPwd("taosdata");
13
14
  let wsSql = await wsSql_1.WsSql.open(conf);
14
- await wsSql.exec('create database if not exists power_stmt KEEP 3650 DURATION 10 BUFFER 16 WAL_LEVEL 1;');
15
- await wsSql.exec('CREATE STABLE if not exists power_stmt.meters (ts timestamp, current float, voltage int, phase float) TAGS (location binary(64), groupId int);');
15
+ await wsSql.exec("drop database if exists power_func_stmt1;");
16
+ await wsSql.exec("create database if not exists power_func_stmt1 KEEP 3650 DURATION 10 BUFFER 16 WAL_LEVEL 1;");
17
+ await wsSql.exec("CREATE STABLE if not exists power_func_stmt1.meters (ts timestamp, current float, voltage int, phase float) TAGS (location binary(64), groupId int);");
16
18
  await wsSql.close();
17
19
  });
18
- describe('TDWebSocket.Stmt()', () => {
20
+ describe("TDWebSocket.Stmt()", () => {
19
21
  jest.setTimeout(20 * 1000);
20
- let tags = ['California', 3];
22
+ let tags = ["California", 3];
21
23
  let multi = [
22
24
  // [1709183268567],
23
25
  // [10.2],
24
26
  // [292],
25
- // [0.32],
27
+ // [0.32],
26
28
  [1709183268567, 1709183268568, 1709183268569],
27
29
  [10.2, 10.3, 10.4],
28
30
  [292, 293, 294],
29
31
  [0.32, 0.33, 0.34],
30
32
  ];
31
- test('normal connect', async () => {
32
- let conf = new config_1.WSConfig(dns);
33
- conf.setUser('root');
34
- conf.setPwd('taosdata');
35
- conf.setDb('power_stmt');
33
+ test("normal connect", async () => {
34
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
35
+ conf.setUser("root");
36
+ conf.setPwd("taosdata");
37
+ conf.setDb("power_func_stmt1");
36
38
  let connector = await wsSql_1.WsSql.open(conf);
37
39
  let stmt = await connector.stmtInit();
38
40
  expect(stmt).toBeTruthy();
41
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
39
42
  expect(connector.state()).toBeGreaterThan(0);
40
43
  await stmt.close();
41
44
  await connector.close();
42
45
  });
43
- test('connect db with error', async () => {
46
+ test("connect db with error", async () => {
44
47
  expect.assertions(1);
45
48
  let connector = null;
46
49
  try {
47
- let conf = new config_1.WSConfig(dns);
48
- conf.setUser('root');
49
- conf.setPwd('taosdata');
50
- conf.setDb('jest');
50
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
51
+ conf.setUser("root");
52
+ conf.setPwd("taosdata");
53
+ conf.setDb("jest");
51
54
  connector = await wsSql_1.WsSql.open(conf);
52
55
  let stmt = await connector.stmtInit();
53
56
  await stmt.close();
54
57
  }
55
58
  catch (e) {
56
59
  let err = e;
57
- expect(err.message).toMatch('Database not exist');
60
+ expect(err.message).toMatch("Database not exist");
58
61
  }
59
62
  finally {
60
63
  if (connector) {
@@ -62,17 +65,18 @@ describe('TDWebSocket.Stmt()', () => {
62
65
  }
63
66
  }
64
67
  });
65
- test('normal Prepare', async () => {
66
- let conf = new config_1.WSConfig(dns);
67
- conf.setUser('root');
68
- conf.setPwd('taosdata');
69
- conf.setDb('power_stmt');
68
+ test("normal Prepare", async () => {
69
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
70
+ conf.setUser("root");
71
+ conf.setPwd("taosdata");
72
+ conf.setDb("power_func_stmt1");
70
73
  let connector = await wsSql_1.WsSql.open(conf);
71
74
  let stmt = await connector.stmtInit();
72
75
  expect(stmt).toBeTruthy();
76
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
73
77
  expect(connector.state()).toBeGreaterThan(0);
74
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
75
- await stmt.setTableName('d1001');
78
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
79
+ await stmt.setTableName("d1001");
76
80
  let params = stmt.newStmtParam();
77
81
  params.setVarchar([tags[0]]);
78
82
  params.setInt([tags[1]]);
@@ -80,60 +84,63 @@ describe('TDWebSocket.Stmt()', () => {
80
84
  await stmt.close();
81
85
  await connector.close();
82
86
  });
83
- test('set tag error', async () => {
84
- let conf = new config_1.WSConfig(dns);
85
- conf.setUser('root');
86
- conf.setPwd('taosdata');
87
- conf.setDb('power_stmt');
87
+ test("set tag error", async () => {
88
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
89
+ conf.setUser("root");
90
+ conf.setPwd("taosdata");
91
+ conf.setDb("power_func_stmt1");
88
92
  let connector = await wsSql_1.WsSql.open(conf);
89
93
  let stmt = await connector.stmtInit();
90
94
  expect(stmt).toBeTruthy();
95
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
91
96
  expect(connector.state()).toBeGreaterThan(0);
92
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
93
- await stmt.setTableName('d1001');
97
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
98
+ await stmt.setTableName("d1001");
94
99
  let params = stmt.newStmtParam();
95
100
  params.setVarchar([tags[0]]);
96
101
  try {
97
102
  await stmt.setTags(params);
98
103
  }
99
104
  catch (err) {
100
- expect(err.message).toMatch('stmt tags count not match');
105
+ expect(err.message).toMatch("stmt tags count not match");
101
106
  }
102
107
  await stmt.close();
103
108
  await connector.close();
104
109
  });
105
- test('error Prepare table', async () => {
106
- let conf = new config_1.WSConfig(dns);
107
- conf.setUser('root');
108
- conf.setPwd('taosdata');
109
- conf.setDb('power_stmt');
110
+ test("error Prepare table", async () => {
111
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
112
+ conf.setUser("root");
113
+ conf.setPwd("taosdata");
114
+ conf.setDb("power_func_stmt1");
110
115
  let connector = await wsSql_1.WsSql.open(conf);
111
116
  let stmt = await connector.stmtInit();
112
117
  expect(stmt).toBeTruthy();
118
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
113
119
  expect(connector.state()).toBeGreaterThan(0);
114
120
  try {
115
- await stmt.prepare('INSERT ? INTO ? USING meters TAGS (?, ?) VALUES (?, ?, ?, ?)');
116
- await stmt.setTableName('d1001');
121
+ await stmt.prepare("INSERT ? INTO ? USING meters TAGS (?, ?) VALUES (?, ?, ?, ?)");
122
+ await stmt.setTableName("d1001");
117
123
  }
118
124
  catch (e) {
119
125
  let err = e;
120
- expect(err.message).toMatch("syntax error near '? into ? using meters tags (?, ?) values (?, ?, ?, ?)' (keyword INTO is expected)");
126
+ expect(err.message).toMatch(/keyword INTO is expected|Syntax error in SQL/);
121
127
  }
122
128
  await stmt.close();
123
129
  await connector.close();
124
130
  });
125
- test('error Prepare tag', async () => {
126
- let conf = new config_1.WSConfig(dns);
127
- conf.setUser('root');
128
- conf.setPwd('taosdata');
129
- conf.setDb('power_stmt');
131
+ test("error Prepare tag", async () => {
132
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
133
+ conf.setUser("root");
134
+ conf.setPwd("taosdata");
135
+ conf.setDb("power_func_stmt1");
130
136
  let connector = await wsSql_1.WsSql.open(conf);
131
137
  let stmt = await connector.stmtInit();
132
138
  expect(stmt).toBeTruthy();
139
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
133
140
  expect(connector.state()).toBeGreaterThan(0);
134
141
  try {
135
- await stmt.prepare('INSERT INTO ? USING meters TAGS (?, ?, ?) VALUES (?, ?, ?, ?)');
136
- await stmt.setTableName('d1001');
142
+ await stmt.prepare("INSERT INTO ? USING meters TAGS (?, ?, ?) VALUES (?, ?, ?, ?)");
143
+ await stmt.setTableName("d1001");
137
144
  }
138
145
  catch (e) {
139
146
  let err = e;
@@ -142,22 +149,22 @@ describe('TDWebSocket.Stmt()', () => {
142
149
  await stmt.close();
143
150
  await connector.close();
144
151
  });
145
- test('normal BindParam', async () => {
146
- let conf = new config_1.WSConfig(dns);
147
- conf.setUser('root');
148
- conf.setPwd('taosdata');
149
- conf.setDb('power_stmt');
152
+ test("Bind a single table", async () => {
153
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
154
+ conf.setUser("root");
155
+ conf.setPwd("taosdata");
156
+ conf.setDb("power_func_stmt1");
150
157
  let connector = await wsSql_1.WsSql.open(conf);
151
158
  let stmt = await connector.stmtInit();
152
159
  expect(stmt).toBeTruthy();
153
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
154
- await stmt.setTableName('d1001');
160
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
161
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) (ts, current, voltage, phase) VALUES (?, ?, ?, ?)");
162
+ await stmt.setTableName("power_func_stmt1.d1001");
155
163
  let params = stmt.newStmtParam();
156
- params.setVarchar(['SanFrancisco']);
157
- params.setInt([7]);
164
+ params.setVarchar(["SanFrancisco"]);
165
+ params.setInt([1]);
158
166
  await stmt.setTags(params);
159
167
  let lastTs = 0;
160
- const allp = [];
161
168
  for (let i = 0; i < 10; i++) {
162
169
  for (let j = 0; j < multi[0].length; j++) {
163
170
  multi[0][j] = multi[0][0] + j;
@@ -168,29 +175,29 @@ describe('TDWebSocket.Stmt()', () => {
168
175
  dataParams.setFloat(multi[1]);
169
176
  dataParams.setInt(multi[2]);
170
177
  dataParams.setFloat(multi[3]);
171
- allp.push(stmt.bind(dataParams));
178
+ await stmt.bind(dataParams);
172
179
  multi[0][0] = lastTs + 1;
173
180
  }
174
- await Promise.all(allp);
175
181
  await stmt.batch();
176
182
  await stmt.exec();
177
183
  expect(stmt.getLastAffected()).toEqual(30);
178
184
  await stmt.close();
179
185
  await connector.close();
180
186
  });
181
- test('error BindParam', async () => {
182
- let conf = new config_1.WSConfig(dns);
183
- conf.setUser('root');
184
- conf.setPwd('taosdata');
185
- conf.setDb('power_stmt');
187
+ test("error BindParam", async () => {
188
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
189
+ conf.setUser("root");
190
+ conf.setPwd("taosdata");
191
+ conf.setDb("power_func_stmt1");
186
192
  let connector = await wsSql_1.WsSql.open(conf);
187
193
  let stmt = await connector.stmtInit();
188
194
  expect(stmt).toBeTruthy();
195
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
189
196
  expect(connector.state()).toBeGreaterThan(0);
190
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
191
- await stmt.setTableName('d1001');
197
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
198
+ await stmt.setTableName("d1001");
192
199
  let params = stmt.newStmtParam();
193
- params.setVarchar(['SanFrancisco']);
200
+ params.setVarchar(["SanFrancisco"]);
194
201
  params.setInt([7]);
195
202
  await stmt.setTags(params);
196
203
  let multi = [
@@ -211,24 +218,25 @@ describe('TDWebSocket.Stmt()', () => {
211
218
  }
212
219
  catch (e) {
213
220
  let err = e;
214
- expect(err.message).toMatch("wrong row length");
221
+ expect(err.message).toMatch(/wrong row length|bind data length error/);
215
222
  }
216
223
  await stmt.close();
217
224
  await connector.close();
218
225
  });
219
- test('no Batch', async () => {
220
- let conf = new config_1.WSConfig(dns);
221
- conf.setUser('root');
222
- conf.setPwd('taosdata');
223
- conf.setDb('power_stmt');
226
+ test("no Batch", async () => {
227
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
228
+ conf.setUser("root");
229
+ conf.setPwd("taosdata");
230
+ conf.setDb("power_func_stmt1");
224
231
  let connector = await wsSql_1.WsSql.open(conf);
225
232
  let stmt = await connector.stmtInit();
226
233
  expect(stmt).toBeTruthy();
234
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
227
235
  expect(connector.state()).toBeGreaterThan(0);
228
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
229
- await stmt.setTableName('d1001');
236
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
237
+ await stmt.setTableName("d1001");
230
238
  let params = stmt.newStmtParam();
231
- params.setVarchar(['SanFrancisco']);
239
+ params.setVarchar(["SanFrancisco"]);
232
240
  params.setInt([7]);
233
241
  await stmt.setTags(params);
234
242
  let multi = [
@@ -253,19 +261,20 @@ describe('TDWebSocket.Stmt()', () => {
253
261
  await stmt.close();
254
262
  await connector.close();
255
263
  });
256
- test('Batch after BindParam', async () => {
257
- let conf = new config_1.WSConfig(dns);
258
- conf.setUser('root');
259
- conf.setPwd('taosdata');
260
- conf.setDb('power_stmt');
264
+ test("Batch after BindParam", async () => {
265
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
266
+ conf.setUser("root");
267
+ conf.setPwd("taosdata");
268
+ conf.setDb("power_func_stmt1");
261
269
  let connector = await wsSql_1.WsSql.open(conf);
262
270
  let stmt = await connector.stmtInit();
263
271
  expect(stmt).toBeTruthy();
272
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
264
273
  expect(connector.state()).toBeGreaterThan(0);
265
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
266
- await stmt.setTableName('d1001');
274
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
275
+ await stmt.setTableName("d1001");
267
276
  let params = stmt.newStmtParam();
268
- params.setVarchar(['SanFrancisco']);
277
+ params.setVarchar(["SanFrancisco"]);
269
278
  params.setInt([7]);
270
279
  await stmt.setTags(params);
271
280
  let multi1 = [
@@ -287,9 +296,9 @@ describe('TDWebSocket.Stmt()', () => {
287
296
  dataParams.setFloat(multi1[3]);
288
297
  await stmt.bind(dataParams);
289
298
  await stmt.batch();
290
- await stmt.setTableName('d1002');
299
+ await stmt.setTableName("d1002");
291
300
  params = stmt.newStmtParam();
292
- params.setVarchar(['SanFrancisco']);
301
+ params.setVarchar(["SanFrancisco"]);
293
302
  params.setInt([5]);
294
303
  await stmt.setTags(params);
295
304
  dataParams = stmt.newStmtParam();
@@ -304,17 +313,18 @@ describe('TDWebSocket.Stmt()', () => {
304
313
  await stmt.close();
305
314
  await connector.close();
306
315
  });
307
- test('no set tag', async () => {
308
- let conf = new config_1.WSConfig(dns);
309
- conf.setUser('root');
310
- conf.setPwd('taosdata');
311
- conf.setDb('power_stmt');
316
+ test("no set tag", async () => {
317
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
318
+ conf.setUser("root");
319
+ conf.setPwd("taosdata");
320
+ conf.setDb("power_func_stmt1");
312
321
  let connector = await wsSql_1.WsSql.open(conf);
313
322
  let stmt = await connector.stmtInit();
314
323
  expect(stmt).toBeTruthy();
324
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
315
325
  expect(connector.state()).toBeGreaterThan(0);
316
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
317
- await stmt.setTableName('d1001');
326
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
327
+ await stmt.setTableName("d1001");
318
328
  // await stmt.SetTags(tags)
319
329
  try {
320
330
  let dataParams = stmt.newStmtParam();
@@ -328,24 +338,25 @@ describe('TDWebSocket.Stmt()', () => {
328
338
  }
329
339
  catch (e) {
330
340
  let err = e;
331
- expect(err.message).toMatch("Retry needed");
341
+ expect(err.message).toMatch(/Retry needed|Tags are empty/);
332
342
  }
333
343
  await stmt.close();
334
344
  await connector.close();
335
345
  });
336
- test('normal binary BindParam', async () => {
337
- let conf = new config_1.WSConfig(dns);
338
- conf.setUser('root');
339
- conf.setPwd('taosdata');
340
- conf.setDb('power_stmt');
346
+ test("normal binary BindParam", async () => {
347
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
348
+ conf.setUser("root");
349
+ conf.setPwd("taosdata");
350
+ conf.setDb("power_func_stmt1");
341
351
  let connector = await wsSql_1.WsSql.open(conf);
342
352
  let stmt = await connector.stmtInit();
343
353
  expect(stmt).toBeTruthy();
354
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
344
355
  expect(connector.state()).toBeGreaterThan(0);
345
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
346
- await stmt.setTableName('d1002');
356
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
357
+ await stmt.setTableName("d1002");
347
358
  let params = stmt.newStmtParam();
348
- params.setVarchar(['SanFrancisco']);
359
+ params.setVarchar(["SanFrancisco"]);
349
360
  params.setInt([7]);
350
361
  await stmt.setTags(params);
351
362
  let dataParams = stmt.newStmtParam();
@@ -356,24 +367,25 @@ describe('TDWebSocket.Stmt()', () => {
356
367
  await stmt.bind(dataParams);
357
368
  await stmt.batch();
358
369
  await stmt.exec();
359
- let result = await connector.exec("select * from power_stmt.meters");
370
+ let result = await connector.exec("select * from power_func_stmt1.meters");
360
371
  console.log(result);
361
372
  await stmt.close();
362
373
  await connector.close();
363
374
  });
364
- test('normal json BindParam', async () => {
365
- let conf = new config_1.WSConfig(dns);
366
- conf.setUser('root');
367
- conf.setPwd('taosdata');
368
- conf.setDb('power_stmt');
375
+ test("normal json BindParam", async () => {
376
+ let conf = new config_1.WSConfig(dns, "100.100.100.100");
377
+ conf.setUser("root");
378
+ conf.setPwd("taosdata");
379
+ conf.setDb("power_func_stmt1");
369
380
  let connector = await wsSql_1.WsSql.open(conf);
370
381
  let stmt = await connector.stmtInit();
371
382
  expect(stmt).toBeTruthy();
383
+ expect(stmt).toBeInstanceOf(wsStmt1_1.WsStmt1);
372
384
  expect(connector.state()).toBeGreaterThan(0);
373
- await stmt.prepare('INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)');
374
- await stmt.setTableName('d1001');
385
+ await stmt.prepare("INSERT INTO ? USING meters (location, groupId) TAGS (?, ?) VALUES (?, ?, ?, ?)");
386
+ await stmt.setTableName("d1001");
375
387
  let params = stmt.newStmtParam();
376
- params.setVarchar(['SanFrancisco']);
388
+ params.setVarchar(["SanFrancisco"]);
377
389
  params.setInt([7]);
378
390
  await stmt.setTags(params);
379
391
  let multi1 = [
@@ -396,10 +408,10 @@ describe('TDWebSocket.Stmt()', () => {
396
408
  });
397
409
  afterAll(async () => {
398
410
  let conf = new config_1.WSConfig(dns);
399
- conf.setUser('root');
400
- conf.setPwd('taosdata');
411
+ conf.setUser("root");
412
+ conf.setPwd("taosdata");
401
413
  let wsSql = await wsSql_1.WsSql.open(conf);
402
- await wsSql.exec('drop database power_stmt');
414
+ await wsSql.exec("drop database power_func_stmt1");
403
415
  await wsSql.close();
404
416
  wsConnectorPool_1.WebSocketConnectionPool.instance().destroyed();
405
417
  });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=stmt1.type.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stmt1.type.test.d.ts","sourceRoot":"","sources":["../../../test/bulkPulling/stmt1.type.test.ts"],"names":[],"mappings":""}