@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.
- package/lib/example/all_type_query.js +26 -22
- package/lib/example/all_type_stmt.js +22 -20
- package/lib/example/basicBatchTmq.js +14 -14
- package/lib/example/basicSchemaless.js +11 -11
- package/lib/example/basicSql.js +10 -10
- package/lib/example/basicStmt.js +3 -3
- package/lib/example/basicTmq.js +8 -9
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/src/client/wsClient.d.ts +3 -2
- package/lib/src/client/wsClient.d.ts.map +1 -1
- package/lib/src/client/wsClient.js +66 -40
- package/lib/src/client/wsConnector.d.ts.map +1 -1
- package/lib/src/client/wsConnector.js +40 -14
- package/lib/src/client/wsConnectorPool.d.ts.map +1 -1
- package/lib/src/client/wsConnectorPool.js +29 -14
- package/lib/src/client/wsEventCallback.d.ts.map +1 -1
- package/lib/src/client/wsEventCallback.js +6 -4
- package/lib/src/client/wsResponse.d.ts.map +1 -1
- package/lib/src/client/wsResponse.js +6 -2
- package/lib/src/common/config.d.ts +5 -3
- package/lib/src/common/config.d.ts.map +1 -1
- package/lib/src/common/config.js +15 -5
- package/lib/src/common/constant.d.ts +11 -1
- package/lib/src/common/constant.d.ts.map +1 -1
- package/lib/src/common/constant.js +48 -40
- package/lib/src/common/log.d.ts +1 -1
- package/lib/src/common/log.d.ts.map +1 -1
- package/lib/src/common/log.js +9 -7
- package/lib/src/common/reqid.d.ts.map +1 -1
- package/lib/src/common/reqid.js +7 -7
- package/lib/src/common/taosResult.d.ts.map +1 -1
- package/lib/src/common/taosResult.js +46 -27
- package/lib/src/common/ut8Helper.d.ts.map +1 -1
- package/lib/src/common/ut8Helper.js +8 -8
- package/lib/src/common/utils.d.ts.map +1 -1
- package/lib/src/common/utils.js +17 -16
- package/lib/src/common/wsError.d.ts.map +1 -1
- package/lib/src/common/wsError.js +3 -3
- package/lib/src/common/wsOptions.d.ts +1 -1
- package/lib/src/index.d.ts +3 -3
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/sql/wsProto.d.ts.map +1 -1
- package/lib/src/sql/wsRows.d.ts +3 -3
- package/lib/src/sql/wsRows.d.ts.map +1 -1
- package/lib/src/sql/wsRows.js +4 -2
- package/lib/src/sql/wsSql.d.ts +5 -5
- package/lib/src/sql/wsSql.d.ts.map +1 -1
- package/lib/src/sql/wsSql.js +23 -15
- package/lib/src/stmt/FieldBindParams.d.ts +9 -0
- package/lib/src/stmt/FieldBindParams.d.ts.map +1 -0
- package/lib/src/stmt/FieldBindParams.js +13 -0
- package/lib/src/stmt/wsColumnInfo.d.ts +12 -0
- package/lib/src/stmt/wsColumnInfo.d.ts.map +1 -0
- package/lib/src/stmt/wsColumnInfo.js +17 -0
- package/lib/src/stmt/wsParams1.d.ts +14 -0
- package/lib/src/stmt/wsParams1.d.ts.map +1 -0
- package/lib/src/stmt/wsParams1.js +300 -0
- package/lib/src/stmt/wsParams2.d.ts +14 -0
- package/lib/src/stmt/wsParams2.d.ts.map +1 -0
- package/lib/src/stmt/wsParams2.js +203 -0
- package/lib/src/stmt/wsParamsBase.d.ts +45 -0
- package/lib/src/stmt/wsParamsBase.d.ts.map +1 -0
- package/lib/src/stmt/wsParamsBase.js +220 -0
- package/lib/src/stmt/wsProto.d.ts +13 -1
- package/lib/src/stmt/wsProto.d.ts.map +1 -1
- package/lib/src/stmt/wsProto.js +206 -2
- package/lib/src/stmt/wsStmt.d.ts +6 -16
- package/lib/src/stmt/wsStmt.d.ts.map +1 -1
- package/lib/src/stmt/wsStmt.js +0 -201
- package/lib/src/stmt/wsStmt1.d.ts +30 -0
- package/lib/src/stmt/wsStmt1.d.ts.map +1 -0
- package/lib/src/stmt/wsStmt1.js +206 -0
- package/lib/src/stmt/wsStmt2.d.ts +37 -0
- package/lib/src/stmt/wsStmt2.d.ts.map +1 -0
- package/lib/src/stmt/wsStmt2.js +284 -0
- package/lib/src/stmt/wsTableInfo.d.ts +17 -0
- package/lib/src/stmt/wsTableInfo.d.ts.map +1 -0
- package/lib/src/stmt/wsTableInfo.js +54 -0
- package/lib/src/tmq/config.d.ts.map +1 -1
- package/lib/src/tmq/config.js +2 -2
- package/lib/src/tmq/constant.d.ts.map +1 -1
- package/lib/src/tmq/constant.js +28 -28
- package/lib/src/tmq/tmqResponse.d.ts.map +1 -1
- package/lib/src/tmq/tmqResponse.js +31 -17
- package/lib/src/tmq/wsTmq.d.ts +2 -2
- package/lib/src/tmq/wsTmq.d.ts.map +1 -1
- package/lib/src/tmq/wsTmq.js +32 -30
- package/lib/test/bulkPulling/cloud.tmq.test.js +11 -11
- package/lib/test/bulkPulling/decimal.test.js +50 -26
- package/lib/test/bulkPulling/log.test.js +8 -8
- package/lib/test/bulkPulling/queryTables.test.js +255 -49
- package/lib/test/bulkPulling/schemaless.test.js +34 -34
- package/lib/test/bulkPulling/sql.test.js +108 -66
- package/lib/test/bulkPulling/stmt1.func.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt1.func.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/{stmt.func.test.js → stmt1.func.test.js} +128 -116
- package/lib/test/bulkPulling/stmt1.type.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt1.type.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/stmt1.type.test.js +399 -0
- package/lib/test/bulkPulling/stmt2.func.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt2.func.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/stmt2.func.test.js +543 -0
- package/lib/test/bulkPulling/stmt2.type.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt2.type.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/{stmt.type.test.js → stmt2.type.test.js} +136 -49
- package/lib/test/bulkPulling/tmq.test.js +225 -31
- package/lib/test/bulkPulling/utils.test.js +2 -2
- package/lib/test/bulkPulling/wsConnectPool.test.js +20 -20
- package/lib/test/utils.d.ts.map +1 -1
- package/lib/test/utils.js +130 -129
- package/package.json +1 -1
- package/readme.md +1 -0
- package/lib/src/stmt/wsParams.d.ts +0 -41
- package/lib/src/stmt/wsParams.d.ts.map +0 -1
- package/lib/src/stmt/wsParams.js +0 -428
- package/lib/test/bulkPulling/stmt.func.test.d.ts +0 -2
- package/lib/test/bulkPulling/stmt.func.test.d.ts.map +0 -1
- package/lib/test/bulkPulling/stmt.type.test.d.ts +0 -2
- 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
|
-
|
|
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(
|
|
12
|
-
conf.setPwd(
|
|
12
|
+
conf.setUser("root");
|
|
13
|
+
conf.setPwd("taosdata");
|
|
13
14
|
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
14
|
-
await wsSql.exec(
|
|
15
|
-
await wsSql.exec(
|
|
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(
|
|
20
|
+
describe("TDWebSocket.Stmt()", () => {
|
|
19
21
|
jest.setTimeout(20 * 1000);
|
|
20
|
-
let tags = [
|
|
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(
|
|
32
|
-
let conf = new config_1.WSConfig(dns);
|
|
33
|
-
conf.setUser(
|
|
34
|
-
conf.setPwd(
|
|
35
|
-
conf.setDb(
|
|
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(
|
|
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(
|
|
49
|
-
conf.setPwd(
|
|
50
|
-
conf.setDb(
|
|
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(
|
|
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(
|
|
66
|
-
let conf = new config_1.WSConfig(dns);
|
|
67
|
-
conf.setUser(
|
|
68
|
-
conf.setPwd(
|
|
69
|
-
conf.setDb(
|
|
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(
|
|
75
|
-
await stmt.setTableName(
|
|
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(
|
|
84
|
-
let conf = new config_1.WSConfig(dns);
|
|
85
|
-
conf.setUser(
|
|
86
|
-
conf.setPwd(
|
|
87
|
-
conf.setDb(
|
|
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(
|
|
93
|
-
await stmt.setTableName(
|
|
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(
|
|
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(
|
|
106
|
-
let conf = new config_1.WSConfig(dns);
|
|
107
|
-
conf.setUser(
|
|
108
|
-
conf.setPwd(
|
|
109
|
-
conf.setDb(
|
|
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(
|
|
116
|
-
await stmt.setTableName(
|
|
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(
|
|
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(
|
|
126
|
-
let conf = new config_1.WSConfig(dns);
|
|
127
|
-
conf.setUser(
|
|
128
|
-
conf.setPwd(
|
|
129
|
-
conf.setDb(
|
|
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(
|
|
136
|
-
await stmt.setTableName(
|
|
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(
|
|
146
|
-
let conf = new config_1.WSConfig(dns);
|
|
147
|
-
conf.setUser(
|
|
148
|
-
conf.setPwd(
|
|
149
|
-
conf.setDb(
|
|
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
|
-
|
|
154
|
-
await stmt.
|
|
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([
|
|
157
|
-
params.setInt([
|
|
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
|
-
|
|
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(
|
|
182
|
-
let conf = new config_1.WSConfig(dns);
|
|
183
|
-
conf.setUser(
|
|
184
|
-
conf.setPwd(
|
|
185
|
-
conf.setDb(
|
|
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(
|
|
191
|
-
await stmt.setTableName(
|
|
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([
|
|
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(
|
|
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(
|
|
220
|
-
let conf = new config_1.WSConfig(dns);
|
|
221
|
-
conf.setUser(
|
|
222
|
-
conf.setPwd(
|
|
223
|
-
conf.setDb(
|
|
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(
|
|
229
|
-
await stmt.setTableName(
|
|
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([
|
|
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(
|
|
257
|
-
let conf = new config_1.WSConfig(dns);
|
|
258
|
-
conf.setUser(
|
|
259
|
-
conf.setPwd(
|
|
260
|
-
conf.setDb(
|
|
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(
|
|
266
|
-
await stmt.setTableName(
|
|
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([
|
|
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(
|
|
299
|
+
await stmt.setTableName("d1002");
|
|
291
300
|
params = stmt.newStmtParam();
|
|
292
|
-
params.setVarchar([
|
|
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(
|
|
308
|
-
let conf = new config_1.WSConfig(dns);
|
|
309
|
-
conf.setUser(
|
|
310
|
-
conf.setPwd(
|
|
311
|
-
conf.setDb(
|
|
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(
|
|
317
|
-
await stmt.setTableName(
|
|
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(
|
|
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(
|
|
337
|
-
let conf = new config_1.WSConfig(dns);
|
|
338
|
-
conf.setUser(
|
|
339
|
-
conf.setPwd(
|
|
340
|
-
conf.setDb(
|
|
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(
|
|
346
|
-
await stmt.setTableName(
|
|
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([
|
|
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
|
|
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(
|
|
365
|
-
let conf = new config_1.WSConfig(dns);
|
|
366
|
-
conf.setUser(
|
|
367
|
-
conf.setPwd(
|
|
368
|
-
conf.setDb(
|
|
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(
|
|
374
|
-
await stmt.setTableName(
|
|
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([
|
|
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(
|
|
400
|
-
conf.setPwd(
|
|
411
|
+
conf.setUser("root");
|
|
412
|
+
conf.setPwd("taosdata");
|
|
401
413
|
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
402
|
-
await wsSql.exec(
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"stmt1.type.test.d.ts","sourceRoot":"","sources":["../../../test/bulkPulling/stmt1.type.test.ts"],"names":[],"mappings":""}
|