@tdengine/websocket 3.2.2 → 3.3.0
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/package.json +64 -0
- package/lib/src/client/retryConfig.d.ts +10 -0
- package/lib/src/client/retryConfig.d.ts.map +1 -0
- package/lib/src/client/retryConfig.js +46 -0
- package/lib/src/client/wsClient.d.ts +24 -7
- package/lib/src/client/wsClient.d.ts.map +1 -1
- package/lib/src/client/wsClient.js +164 -137
- package/lib/src/client/wsConnector.d.ts +55 -9
- package/lib/src/client/wsConnector.d.ts.map +1 -1
- package/lib/src/client/wsConnector.js +522 -102
- package/lib/src/client/wsConnectorPool.d.ts +5 -1
- package/lib/src/client/wsConnectorPool.d.ts.map +1 -1
- package/lib/src/client/wsConnectorPool.js +67 -52
- package/lib/src/client/wsEventCallback.d.ts +3 -0
- package/lib/src/client/wsEventCallback.d.ts.map +1 -1
- package/lib/src/client/wsEventCallback.js +67 -8
- package/lib/src/client/wsResponse.d.ts +0 -3
- package/lib/src/client/wsResponse.d.ts.map +1 -1
- package/lib/src/client/wsResponse.js +0 -3
- package/lib/src/common/addressConnectionTracker.d.ts +11 -0
- package/lib/src/common/addressConnectionTracker.d.ts.map +1 -0
- package/lib/src/common/addressConnectionTracker.js +53 -0
- package/lib/src/common/config.d.ts +3 -0
- package/lib/src/common/config.d.ts.map +1 -1
- package/lib/src/common/config.js +6 -0
- package/lib/src/common/constant.d.ts +1 -0
- package/lib/src/common/constant.d.ts.map +1 -1
- package/lib/src/common/constant.js +6 -1
- package/lib/src/common/dsn.d.ts +30 -0
- package/lib/src/common/dsn.d.ts.map +1 -0
- package/lib/src/common/dsn.js +221 -0
- package/lib/src/common/taosResult.d.ts.map +1 -1
- package/lib/src/common/taosResult.js +0 -5
- package/lib/src/common/urlParser.d.ts +32 -0
- package/lib/src/common/urlParser.d.ts.map +1 -0
- package/lib/src/common/urlParser.js +201 -0
- package/lib/src/common/utils.d.ts +6 -1
- package/lib/src/common/utils.d.ts.map +1 -1
- package/lib/src/common/utils.js +74 -22
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/sql/wsSql.d.ts.map +1 -1
- package/lib/src/sql/wsSql.js +2 -2
- package/lib/src/stmt/FieldBindParams.d.ts.map +1 -1
- package/lib/src/stmt/wsColumnInfo.d.ts.map +1 -1
- package/lib/src/stmt/wsParams1.d.ts.map +1 -1
- package/lib/src/stmt/wsParams1.js +26 -26
- package/lib/src/stmt/wsParams2.d.ts.map +1 -1
- package/lib/src/stmt/wsParams2.js +0 -3
- package/lib/src/stmt/wsParamsBase.d.ts.map +1 -1
- package/lib/src/stmt/wsProto.d.ts.map +1 -1
- package/lib/src/stmt/wsProto.js +16 -16
- package/lib/src/stmt/wsStmt1.d.ts.map +1 -1
- package/lib/src/stmt/wsStmt2.d.ts +12 -4
- package/lib/src/stmt/wsStmt2.d.ts.map +1 -1
- package/lib/src/stmt/wsStmt2.js +182 -64
- package/lib/src/stmt/wsTableInfo.d.ts.map +1 -1
- package/lib/src/tmq/config.d.ts +4 -2
- package/lib/src/tmq/config.d.ts.map +1 -1
- package/lib/src/tmq/config.js +30 -13
- package/lib/src/tmq/constant.d.ts +4 -0
- package/lib/src/tmq/constant.d.ts.map +1 -1
- package/lib/src/tmq/constant.js +4 -0
- package/lib/src/tmq/tmqResponse.d.ts.map +1 -1
- package/lib/src/tmq/tmqResponse.js +1 -4
- package/lib/src/tmq/wsTmq.d.ts +4 -1
- package/lib/src/tmq/wsTmq.d.ts.map +1 -1
- package/lib/src/tmq/wsTmq.js +55 -27
- package/lib/test/bulkPulling/a.test.d.ts +2 -0
- package/lib/test/bulkPulling/a.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/a.test.js +166 -0
- package/lib/test/bulkPulling/cloud.tmq.test.js +3 -2
- package/lib/test/bulkPulling/decimal.test.js +8 -8
- package/lib/test/bulkPulling/dsn.test.d.ts +2 -0
- package/lib/test/bulkPulling/dsn.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/dsn.test.js +397 -0
- package/lib/test/bulkPulling/queryTables.test.js +1 -1
- package/lib/test/bulkPulling/retryConfig.test.d.ts +2 -0
- package/lib/test/bulkPulling/retryConfig.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/retryConfig.test.js +34 -0
- package/lib/test/bulkPulling/schemaless.test.js +15 -14
- package/lib/test/bulkPulling/sql.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/sql.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/sql.failover.test.js +338 -0
- package/lib/test/bulkPulling/sql.test.js +116 -44
- package/lib/test/bulkPulling/stmt1.func.test.js +31 -30
- package/lib/test/bulkPulling/stmt1.type.test.js +1 -1
- package/lib/test/bulkPulling/stmt2.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt2.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/stmt2.failover.test.js +313 -0
- package/lib/test/bulkPulling/stmt2.func.test.js +37 -36
- package/lib/test/bulkPulling/stmt2.init.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/stmt2.init.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/stmt2.init.failover.test.js +50 -0
- package/lib/test/bulkPulling/stmt2.type.test.js +1 -1
- package/lib/test/bulkPulling/tmq.config.test.d.ts +2 -0
- package/lib/test/bulkPulling/tmq.config.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/tmq.config.test.js +77 -0
- package/lib/test/bulkPulling/tmq.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/tmq.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/tmq.failover.test.js +404 -0
- package/lib/test/bulkPulling/tmq.test.js +135 -14
- package/lib/test/bulkPulling/urlParser.test.d.ts +2 -0
- package/lib/test/bulkPulling/urlParser.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/urlParser.test.js +452 -0
- package/lib/test/bulkPulling/wsClient.reconnect.integration.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsClient.reconnect.integration.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsClient.reconnect.integration.test.js +184 -0
- package/lib/test/bulkPulling/wsClient.recovery.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsClient.recovery.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsClient.recovery.test.js +104 -0
- package/lib/test/bulkPulling/wsConfig.dsn.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsConfig.dsn.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsConfig.dsn.test.js +39 -0
- package/lib/test/bulkPulling/wsConnectPool.test.js +7 -7
- package/lib/test/bulkPulling/wsConnector.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsConnector.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsConnector.failover.test.js +497 -0
- package/lib/test/bulkPulling/wsConnectorPool.key.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsConnectorPool.key.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsConnectorPool.key.test.js +52 -0
- package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.js +28 -0
- package/lib/test/bulkPulling/wsEventCallback.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsEventCallback.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsEventCallback.test.js +54 -0
- package/lib/test/bulkPulling/wsProxy.failover.integration.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsProxy.failover.integration.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsProxy.failover.integration.test.js +120 -0
- package/lib/test/bulkPulling/wsProxy.failover.test.d.ts +2 -0
- package/lib/test/bulkPulling/wsProxy.failover.test.d.ts.map +1 -0
- package/lib/test/bulkPulling/wsProxy.failover.test.js +465 -0
- package/lib/test/client/wsClient.recovery.test.d.ts +2 -0
- package/lib/test/client/wsClient.recovery.test.d.ts.map +1 -0
- package/lib/test/client/wsClient.recovery.test.js +122 -0
- package/lib/test/client/wsConnectPool.test.d.ts +2 -0
- package/lib/test/client/wsConnectPool.test.d.ts.map +1 -0
- package/lib/test/client/wsConnectPool.test.js +147 -0
- package/lib/test/client/wsConnector.failover.test.d.ts +2 -0
- package/lib/test/client/wsConnector.failover.test.d.ts.map +1 -0
- package/lib/test/client/wsConnector.failover.test.js +681 -0
- package/lib/test/client/wsConnector.leastConnections.test.d.ts +2 -0
- package/lib/test/client/wsConnector.leastConnections.test.d.ts.map +1 -0
- package/lib/test/client/wsConnector.leastConnections.test.js +71 -0
- package/lib/test/client/wsConnectorPool.key.test.d.ts +2 -0
- package/lib/test/client/wsConnectorPool.key.test.d.ts.map +1 -0
- package/lib/test/client/wsConnectorPool.key.test.js +127 -0
- package/lib/test/client/wsEventCallback.test.d.ts +2 -0
- package/lib/test/client/wsEventCallback.test.d.ts.map +1 -0
- package/lib/test/client/wsEventCallback.test.js +98 -0
- package/lib/test/common/addressConnectionTracker.test.d.ts +2 -0
- package/lib/test/common/addressConnectionTracker.test.d.ts.map +1 -0
- package/lib/test/common/addressConnectionTracker.test.js +74 -0
- package/lib/test/common/dsn.test.d.ts +2 -0
- package/lib/test/common/dsn.test.d.ts.map +1 -0
- package/lib/test/common/dsn.test.js +406 -0
- package/lib/test/common/log.test.d.ts +2 -0
- package/lib/test/common/log.test.d.ts.map +1 -0
- package/lib/test/common/log.test.js +54 -0
- package/lib/test/common/utils.test.d.ts +2 -0
- package/lib/test/common/utils.test.d.ts.map +1 -0
- package/lib/test/common/utils.test.js +13 -0
- package/lib/test/common/wsConfig.dsn.test.d.ts +2 -0
- package/lib/test/common/wsConfig.dsn.test.d.ts.map +1 -0
- package/lib/test/common/wsConfig.dsn.test.js +39 -0
- package/lib/test/helpers/utils.d.ts +27 -0
- package/lib/test/helpers/utils.d.ts.map +1 -0
- package/lib/test/helpers/utils.js +341 -0
- package/lib/test/helpers/wsFailoverProxy.d.ts +109 -0
- package/lib/test/helpers/wsFailoverProxy.d.ts.map +1 -0
- package/lib/test/helpers/wsFailoverProxy.js +420 -0
- package/lib/test/helpers/wsProxy.d.ts +110 -0
- package/lib/test/helpers/wsProxy.d.ts.map +1 -0
- package/lib/test/helpers/wsProxy.js +429 -0
- package/lib/test/sql/core/decimal.test.d.ts +2 -0
- package/lib/test/sql/core/decimal.test.d.ts.map +1 -0
- package/lib/test/sql/core/decimal.test.js +153 -0
- package/lib/test/sql/core/queryTables.test.d.ts +2 -0
- package/lib/test/sql/core/queryTables.test.d.ts.map +1 -0
- package/lib/test/sql/core/queryTables.test.js +506 -0
- package/lib/test/sql/core/schemaless.test.d.ts +2 -0
- package/lib/test/sql/core/schemaless.test.d.ts.map +1 -0
- package/lib/test/sql/core/schemaless.test.js +102 -0
- package/lib/test/sql/core/sql.test.d.ts +2 -0
- package/lib/test/sql/core/sql.test.d.ts.map +1 -0
- package/lib/test/sql/core/sql.test.js +324 -0
- package/lib/test/sql/decimal.test.d.ts +2 -0
- package/lib/test/sql/decimal.test.d.ts.map +1 -0
- package/lib/test/sql/decimal.test.js +153 -0
- package/lib/test/sql/failover/sql.failover.test.d.ts +2 -0
- package/lib/test/sql/failover/sql.failover.test.d.ts.map +1 -0
- package/lib/test/sql/failover/sql.failover.test.js +341 -0
- package/lib/test/sql/queryTables.test.d.ts +2 -0
- package/lib/test/sql/queryTables.test.d.ts.map +1 -0
- package/lib/test/sql/queryTables.test.js +506 -0
- package/lib/test/sql/schemaless.test.d.ts +2 -0
- package/lib/test/sql/schemaless.test.d.ts.map +1 -0
- package/lib/test/sql/schemaless.test.js +102 -0
- package/lib/test/sql/sql.failover.test.d.ts +2 -0
- package/lib/test/sql/sql.failover.test.d.ts.map +1 -0
- package/lib/test/sql/sql.failover.test.js +341 -0
- package/lib/test/sql/sql.test.d.ts +2 -0
- package/lib/test/sql/sql.test.d.ts.map +1 -0
- package/lib/test/sql/sql.test.js +324 -0
- package/lib/test/stmt/failover/stmt2.failover.mock.test.d.ts +2 -0
- package/lib/test/stmt/failover/stmt2.failover.mock.test.d.ts.map +1 -0
- package/lib/test/stmt/failover/stmt2.failover.mock.test.js +341 -0
- package/lib/test/stmt/failover/stmt2.failover.test.d.ts +2 -0
- package/lib/test/stmt/failover/stmt2.failover.test.d.ts.map +1 -0
- package/lib/test/stmt/failover/stmt2.failover.test.js +384 -0
- package/lib/test/stmt/stmt1.func.test.d.ts +2 -0
- package/lib/test/stmt/stmt1.func.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt1.func.test.js +418 -0
- package/lib/test/stmt/stmt1.type.test.d.ts +2 -0
- package/lib/test/stmt/stmt1.type.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt1.type.test.js +399 -0
- package/lib/test/stmt/stmt2.failover.mock.test.d.ts +2 -0
- package/lib/test/stmt/stmt2.failover.mock.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt2.failover.mock.test.js +341 -0
- package/lib/test/stmt/stmt2.failover.test.d.ts +2 -0
- package/lib/test/stmt/stmt2.failover.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt2.failover.test.js +384 -0
- package/lib/test/stmt/stmt2.func.test.d.ts +2 -0
- package/lib/test/stmt/stmt2.func.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt2.func.test.js +537 -0
- package/lib/test/stmt/stmt2.type.test.d.ts +2 -0
- package/lib/test/stmt/stmt2.type.test.d.ts.map +1 -0
- package/lib/test/stmt/stmt2.type.test.js +401 -0
- package/lib/test/stmt/v1/stmt1.func.test.d.ts +2 -0
- package/lib/test/stmt/v1/stmt1.func.test.d.ts.map +1 -0
- package/lib/test/stmt/v1/stmt1.func.test.js +418 -0
- package/lib/test/stmt/v1/stmt1.type.test.d.ts +2 -0
- package/lib/test/stmt/v1/stmt1.type.test.d.ts.map +1 -0
- package/lib/test/stmt/v1/stmt1.type.test.js +399 -0
- package/lib/test/stmt/v2/stmt2.func.test.d.ts +2 -0
- package/lib/test/stmt/v2/stmt2.func.test.d.ts.map +1 -0
- package/lib/test/stmt/v2/stmt2.func.test.js +537 -0
- package/lib/test/stmt/v2/stmt2.type.test.d.ts +2 -0
- package/lib/test/stmt/v2/stmt2.type.test.d.ts.map +1 -0
- package/lib/test/stmt/v2/stmt2.type.test.js +401 -0
- package/lib/test/tmq/cloud/cloud.tmq.test.d.ts +2 -0
- package/lib/test/tmq/cloud/cloud.tmq.test.d.ts.map +1 -0
- package/lib/test/tmq/cloud/cloud.tmq.test.js +84 -0
- package/lib/test/tmq/cloud/tmq.cloud.test.d.ts +2 -0
- package/lib/test/tmq/cloud/tmq.cloud.test.d.ts.map +1 -0
- package/lib/test/tmq/cloud/tmq.cloud.test.js +82 -0
- package/lib/test/tmq/core/tmq.config.test.d.ts +2 -0
- package/lib/test/tmq/core/tmq.config.test.d.ts.map +1 -0
- package/lib/test/tmq/core/tmq.config.test.js +83 -0
- package/lib/test/tmq/core/tmq.test.d.ts +2 -0
- package/lib/test/tmq/core/tmq.test.d.ts.map +1 -0
- package/lib/test/tmq/core/tmq.test.js +513 -0
- package/lib/test/tmq/failover/tmq.failover.test.d.ts +2 -0
- package/lib/test/tmq/failover/tmq.failover.test.d.ts.map +1 -0
- package/lib/test/tmq/failover/tmq.failover.test.js +404 -0
- package/lib/test/tmq/tmq.cloud.test.d.ts +2 -0
- package/lib/test/tmq/tmq.cloud.test.d.ts.map +1 -0
- package/lib/test/tmq/tmq.cloud.test.js +82 -0
- package/lib/test/tmq/tmq.config.test.d.ts +2 -0
- package/lib/test/tmq/tmq.config.test.d.ts.map +1 -0
- package/lib/test/tmq/tmq.config.test.js +94 -0
- package/lib/test/tmq/tmq.failover.test.d.ts +2 -0
- package/lib/test/tmq/tmq.failover.test.d.ts.map +1 -0
- package/lib/test/tmq/tmq.failover.test.js +404 -0
- package/lib/test/tmq/tmq.test.d.ts +2 -0
- package/lib/test/tmq/tmq.test.d.ts.map +1 -0
- package/lib/test/tmq/tmq.test.js +513 -0
- package/lib/test/unit/connectionManager.test.d.ts +2 -0
- package/lib/test/unit/connectionManager.test.d.ts.map +1 -0
- package/lib/test/unit/connectionManager.test.js +91 -0
- package/lib/test/utils.d.ts +4 -0
- package/lib/test/utils.d.ts.map +1 -1
- package/lib/test/utils.js +11 -17
- package/package.json +1 -1
- package/readme.md +2 -2
|
@@ -0,0 +1,324 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const wsConnectorPool_1 = require("@src/client/wsConnectorPool");
|
|
4
|
+
const config_1 = require("@src/common/config");
|
|
5
|
+
const wsSql_1 = require("@src/sql/wsSql");
|
|
6
|
+
const utils_1 = require("@test-helpers/utils");
|
|
7
|
+
const log_1 = require("@src/common/log");
|
|
8
|
+
let dsn = "ws://localhost:6041";
|
|
9
|
+
let password1 = "Ab1!@#$%,.:?<>;~";
|
|
10
|
+
let password2 = "Bc%^&*()-_+=[]{}";
|
|
11
|
+
(0, log_1.setLevel)("debug");
|
|
12
|
+
beforeAll(async () => {
|
|
13
|
+
let conf = new config_1.WSConfig(dsn);
|
|
14
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
15
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
16
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
17
|
+
await wsSql.exec("drop database if exists sql_test");
|
|
18
|
+
await wsSql.exec("drop database if exists sql_create");
|
|
19
|
+
await wsSql.exec(`create user user1 pass '${password1}'`);
|
|
20
|
+
await wsSql.exec(`create user user2 pass '${password2}'`);
|
|
21
|
+
await wsSql.exec("create user token_user pass 'token_pass_1'");
|
|
22
|
+
await wsSql.exec("create database if not exists sql_test KEEP 3650 DURATION 10 BUFFER 16 WAL_LEVEL 1;");
|
|
23
|
+
await (0, utils_1.Sleep)(100);
|
|
24
|
+
await wsSql.exec("use sql_test");
|
|
25
|
+
await wsSql.exec("CREATE STABLE if not exists meters (ts timestamp, current float, voltage int, phase float) TAGS (location binary(64), groupId int);");
|
|
26
|
+
await wsSql.close();
|
|
27
|
+
});
|
|
28
|
+
describe("TDWebSocket.WsSql()", () => {
|
|
29
|
+
jest.setTimeout(20 * 1000);
|
|
30
|
+
test("normal connect", async () => {
|
|
31
|
+
let wsSql = null;
|
|
32
|
+
let conf = new config_1.WSConfig("");
|
|
33
|
+
conf.setUrl(dsn);
|
|
34
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
35
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
36
|
+
conf.setDb("sql_test");
|
|
37
|
+
conf.setTimezone("America/New_York");
|
|
38
|
+
conf.setTimeOut(6000);
|
|
39
|
+
wsSql = await wsSql_1.WsSql.open(conf);
|
|
40
|
+
expect(wsSql.state()).toBeGreaterThan(0);
|
|
41
|
+
let wsRows = await wsSql.query("select timezone()");
|
|
42
|
+
while (await wsRows.next()) {
|
|
43
|
+
let result = wsRows.getData();
|
|
44
|
+
console.log(result);
|
|
45
|
+
expect(result).toBeTruthy();
|
|
46
|
+
expect(JSON.stringify(result)).toContain("America/New_York");
|
|
47
|
+
}
|
|
48
|
+
await wsSql.close();
|
|
49
|
+
});
|
|
50
|
+
test("special characters connect1", async () => {
|
|
51
|
+
let wsSql = null;
|
|
52
|
+
let conf = new config_1.WSConfig(dsn);
|
|
53
|
+
conf.setUser("user1");
|
|
54
|
+
conf.setPwd(password1);
|
|
55
|
+
wsSql = await wsSql_1.WsSql.open(conf);
|
|
56
|
+
expect(wsSql.state()).toBeGreaterThan(0);
|
|
57
|
+
let version = await wsSql.version();
|
|
58
|
+
expect(version).not.toBeNull();
|
|
59
|
+
expect(version).not.toBeUndefined();
|
|
60
|
+
await wsSql.close();
|
|
61
|
+
});
|
|
62
|
+
test("special characters connect2", async () => {
|
|
63
|
+
let wsSql = null;
|
|
64
|
+
let conf = new config_1.WSConfig(dsn);
|
|
65
|
+
conf.setUser("user2");
|
|
66
|
+
conf.setPwd(password2);
|
|
67
|
+
wsSql = await wsSql_1.WsSql.open(conf);
|
|
68
|
+
expect(wsSql.state()).toBeGreaterThan(0);
|
|
69
|
+
let version = await wsSql.version();
|
|
70
|
+
expect(version).not.toBeNull();
|
|
71
|
+
expect(version).not.toBeUndefined();
|
|
72
|
+
await wsSql.close();
|
|
73
|
+
});
|
|
74
|
+
test("connect db with error", async () => {
|
|
75
|
+
expect.assertions(1);
|
|
76
|
+
let wsSql = null;
|
|
77
|
+
try {
|
|
78
|
+
let conf = new config_1.WSConfig(dsn);
|
|
79
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
80
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
81
|
+
conf.setDb("jest");
|
|
82
|
+
wsSql = await wsSql_1.WsSql.open(conf);
|
|
83
|
+
}
|
|
84
|
+
catch (e) {
|
|
85
|
+
let err = e;
|
|
86
|
+
expect(err.message).toMatch("Database not exist");
|
|
87
|
+
}
|
|
88
|
+
finally {
|
|
89
|
+
if (wsSql) {
|
|
90
|
+
await wsSql.close();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
test("connect url", async () => {
|
|
95
|
+
let url = `ws://${(0, utils_1.testUsername)()}:${(0, utils_1.testPassword)()}@localhost:6041/information_schema?timezone=Asia/Shanghai`;
|
|
96
|
+
let conf = new config_1.WSConfig(url);
|
|
97
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
98
|
+
let version = await wsSql.version();
|
|
99
|
+
console.log(version);
|
|
100
|
+
expect(version).toBeTruthy();
|
|
101
|
+
let wsRows = await wsSql.query("select timezone()");
|
|
102
|
+
while (await wsRows.next()) {
|
|
103
|
+
let result = wsRows.getData();
|
|
104
|
+
console.log(result);
|
|
105
|
+
expect(result).toBeTruthy();
|
|
106
|
+
expect(JSON.stringify(result)).toContain("Asia/Shanghai");
|
|
107
|
+
}
|
|
108
|
+
await wsSql.close();
|
|
109
|
+
});
|
|
110
|
+
test("get taosc version", async () => {
|
|
111
|
+
let conf = new config_1.WSConfig(dsn);
|
|
112
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
113
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
114
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
115
|
+
let version = await wsSql.version();
|
|
116
|
+
await wsSql.close();
|
|
117
|
+
console.log(version);
|
|
118
|
+
expect(version).toBeTruthy();
|
|
119
|
+
});
|
|
120
|
+
test("show databases", async () => {
|
|
121
|
+
let conf = new config_1.WSConfig(dsn);
|
|
122
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
123
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
124
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
125
|
+
let taosResult = await wsSql.exec("show databases");
|
|
126
|
+
await wsSql.close();
|
|
127
|
+
console.log(taosResult);
|
|
128
|
+
expect(taosResult).toBeTruthy();
|
|
129
|
+
});
|
|
130
|
+
test("create databases", async () => {
|
|
131
|
+
let conf = new config_1.WSConfig(dsn);
|
|
132
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
133
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
134
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
135
|
+
let taosResult = await wsSql.exec("create database if not exists sql_create KEEP 3650 DURATION 10 BUFFER 16 WAL_LEVEL 1;");
|
|
136
|
+
await wsSql.close();
|
|
137
|
+
console.log(taosResult);
|
|
138
|
+
expect(taosResult).toBeTruthy();
|
|
139
|
+
});
|
|
140
|
+
test("create stable", async () => {
|
|
141
|
+
let conf = new config_1.WSConfig(dsn);
|
|
142
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
143
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
144
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
145
|
+
let taosResult = await wsSql.exec("use sql_test");
|
|
146
|
+
console.log(taosResult);
|
|
147
|
+
expect(taosResult).toBeTruthy();
|
|
148
|
+
taosResult = await wsSql.exec("CREATE STABLE if not exists meters (ts timestamp, current float, voltage int, phase float) TAGS (location binary(64), groupId int);");
|
|
149
|
+
await wsSql.close();
|
|
150
|
+
console.log(taosResult);
|
|
151
|
+
expect(taosResult).toBeTruthy();
|
|
152
|
+
});
|
|
153
|
+
test("insert recoder", async () => {
|
|
154
|
+
let conf = new config_1.WSConfig(dsn);
|
|
155
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
156
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
157
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
158
|
+
let taosResult = await wsSql.exec("use sql_test");
|
|
159
|
+
console.log(taosResult);
|
|
160
|
+
expect(taosResult).toBeTruthy();
|
|
161
|
+
taosResult = await wsSql.exec("describe meters");
|
|
162
|
+
console.log(taosResult);
|
|
163
|
+
taosResult = await wsSql.exec('INSERT INTO d1001 USING meters (location, groupid) TAGS ("California", 3) VALUES (NOW, 10.2, 219, 0.32)');
|
|
164
|
+
console.log(taosResult);
|
|
165
|
+
expect(taosResult.getAffectRows()).toBeGreaterThanOrEqual(1);
|
|
166
|
+
await wsSql.close();
|
|
167
|
+
});
|
|
168
|
+
test("query sql", async () => {
|
|
169
|
+
let conf = new config_1.WSConfig(dsn);
|
|
170
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
171
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
172
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
173
|
+
let taosResult = await wsSql.exec("use sql_test");
|
|
174
|
+
console.log(taosResult);
|
|
175
|
+
expect(taosResult).toBeTruthy();
|
|
176
|
+
for (let i = 0; i < 10; i++) {
|
|
177
|
+
let wsRows = await wsSql.query("select * from meters limit 3");
|
|
178
|
+
expect(wsRows).toBeTruthy();
|
|
179
|
+
let meta = wsRows.getMeta();
|
|
180
|
+
expect(meta).toBeTruthy();
|
|
181
|
+
console.log("wsRow:meta:=>", meta);
|
|
182
|
+
while (await wsRows.next()) {
|
|
183
|
+
let result = await wsRows.getData();
|
|
184
|
+
expect(result).toBeTruthy();
|
|
185
|
+
}
|
|
186
|
+
await wsRows.close();
|
|
187
|
+
}
|
|
188
|
+
await wsSql.close();
|
|
189
|
+
});
|
|
190
|
+
test("query sql no getdata", async () => {
|
|
191
|
+
let conf = new config_1.WSConfig(dsn);
|
|
192
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
193
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
194
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
195
|
+
let taosResult = await wsSql.exec("use sql_test");
|
|
196
|
+
console.log(taosResult);
|
|
197
|
+
expect(taosResult).toBeTruthy();
|
|
198
|
+
let wsRows = await wsSql.query("select * from meters");
|
|
199
|
+
await wsRows.close();
|
|
200
|
+
await wsSql.close();
|
|
201
|
+
});
|
|
202
|
+
test("timestamp order check", async () => {
|
|
203
|
+
const conf = new config_1.WSConfig(dsn);
|
|
204
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
205
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
206
|
+
const wsSql = await wsSql_1.WsSql.open(conf);
|
|
207
|
+
await wsSql.exec("use sql_test");
|
|
208
|
+
await wsSql.exec("drop table if exists t_order");
|
|
209
|
+
await wsSql.exec("create table t_order (ts timestamp, c1 int)");
|
|
210
|
+
await wsSql.exec("insert into t_order values (1726803356466, 1)");
|
|
211
|
+
await wsSql.exec("insert into t_order values (1726803357466, 2)");
|
|
212
|
+
await wsSql.exec("insert into t_order values (1726803358466, 3)");
|
|
213
|
+
const expectRowsAsc = [
|
|
214
|
+
[1726803356466n, 1],
|
|
215
|
+
[1726803357466n, 2],
|
|
216
|
+
[1726803358466n, 3],
|
|
217
|
+
];
|
|
218
|
+
const expectRowsDesc = expectRowsAsc.slice().reverse();
|
|
219
|
+
const actualRowsAsc = [];
|
|
220
|
+
const actualRowsDesc = [];
|
|
221
|
+
const rowsAsc = await wsSql.query("select * from t_order order by ts asc");
|
|
222
|
+
while (await rowsAsc.next()) {
|
|
223
|
+
const data = rowsAsc.getData();
|
|
224
|
+
if (!data)
|
|
225
|
+
break;
|
|
226
|
+
actualRowsAsc.push(data);
|
|
227
|
+
}
|
|
228
|
+
await rowsAsc.close();
|
|
229
|
+
expect(actualRowsAsc).toEqual(expectRowsAsc);
|
|
230
|
+
const rowsDesc = await wsSql.query("select * from t_order order by ts desc");
|
|
231
|
+
while (await rowsDesc.next()) {
|
|
232
|
+
const data = rowsDesc.getData();
|
|
233
|
+
if (!data)
|
|
234
|
+
break;
|
|
235
|
+
actualRowsDesc.push(data);
|
|
236
|
+
}
|
|
237
|
+
await rowsDesc.close();
|
|
238
|
+
expect(actualRowsDesc).toEqual(expectRowsDesc);
|
|
239
|
+
await wsSql.close();
|
|
240
|
+
});
|
|
241
|
+
(0, utils_1.testEnterprise)("connect with token", async () => {
|
|
242
|
+
const conf = new config_1.WSConfig(dsn);
|
|
243
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
244
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
245
|
+
const wsSql = await wsSql_1.WsSql.open(conf);
|
|
246
|
+
const wsRows = await wsSql.query("create token test_bearer_token from user token_user");
|
|
247
|
+
await wsRows.next();
|
|
248
|
+
const token = wsRows.getData()?.[0];
|
|
249
|
+
expect(token).toBeTruthy();
|
|
250
|
+
await wsRows.close();
|
|
251
|
+
await wsSql.close();
|
|
252
|
+
const assertServerVersionWithConfig = async (config) => {
|
|
253
|
+
const client = await wsSql_1.WsSql.open(config);
|
|
254
|
+
const rows = await client.query("select server_version()");
|
|
255
|
+
await rows.next();
|
|
256
|
+
const version = rows.getData()?.[0];
|
|
257
|
+
expect(version).toBeTruthy();
|
|
258
|
+
await rows.close();
|
|
259
|
+
await client.close();
|
|
260
|
+
};
|
|
261
|
+
const conf1 = new config_1.WSConfig(dsn);
|
|
262
|
+
conf1.setBearerToken(token);
|
|
263
|
+
await assertServerVersionWithConfig(conf1);
|
|
264
|
+
const conf2 = new config_1.WSConfig("ws://localhost:6041?bearer_token=" + token);
|
|
265
|
+
await assertServerVersionWithConfig(conf2);
|
|
266
|
+
});
|
|
267
|
+
(0, utils_1.testEnterprise)("connect with invalid token", async () => {
|
|
268
|
+
let conf = new config_1.WSConfig("ws://localhost:6041?bearer_token=invalid_token");
|
|
269
|
+
await expect(wsSql_1.WsSql.open(conf)).rejects.toMatchObject({
|
|
270
|
+
message: expect.stringMatching(/invalid token/i),
|
|
271
|
+
});
|
|
272
|
+
conf = new config_1.WSConfig("ws://localhost:6041");
|
|
273
|
+
conf.setBearerToken("invalid_token1");
|
|
274
|
+
await expect(wsSql_1.WsSql.open(conf)).rejects.toMatchObject({
|
|
275
|
+
message: expect.stringMatching(/invalid token/i),
|
|
276
|
+
});
|
|
277
|
+
conf = new config_1.WSConfig("ws://localhost:6041");
|
|
278
|
+
conf.setBearerToken(" ");
|
|
279
|
+
await expect(wsSql_1.WsSql.open(conf)).rejects.toMatchObject({
|
|
280
|
+
message: expect.stringMatching(/invalid token/i),
|
|
281
|
+
});
|
|
282
|
+
conf = new config_1.WSConfig("ws://localhost:6041?bearer_token=");
|
|
283
|
+
await expect(wsSql_1.WsSql.open(conf)).rejects.toMatchObject({
|
|
284
|
+
message: expect.stringMatching(/invalid url/i),
|
|
285
|
+
});
|
|
286
|
+
conf = new config_1.WSConfig("ws://localhost:6041");
|
|
287
|
+
conf.setBearerToken("");
|
|
288
|
+
await expect(wsSql_1.WsSql.open(conf)).rejects.toMatchObject({
|
|
289
|
+
message: expect.stringMatching(/invalid url/i),
|
|
290
|
+
});
|
|
291
|
+
});
|
|
292
|
+
(0, utils_1.testNon3360)("connector version info", async () => {
|
|
293
|
+
const conf = new config_1.WSConfig(dsn);
|
|
294
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
295
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
296
|
+
const wsSql = await wsSql_1.WsSql.open(conf);
|
|
297
|
+
await (0, utils_1.Sleep)(2000);
|
|
298
|
+
const wsRows = await wsSql.query("show connections");
|
|
299
|
+
let hasNodejsWs = false;
|
|
300
|
+
while (await wsRows.next()) {
|
|
301
|
+
const data = wsRows.getData();
|
|
302
|
+
if (Array.isArray(data) && data.some(v => typeof v === "string" && v.includes("nodejs-ws"))) {
|
|
303
|
+
hasNodejsWs = true;
|
|
304
|
+
break;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
expect(hasNodejsWs).toBe(true);
|
|
308
|
+
await wsRows.close();
|
|
309
|
+
await wsSql.close();
|
|
310
|
+
});
|
|
311
|
+
});
|
|
312
|
+
afterAll(async () => {
|
|
313
|
+
let conf = new config_1.WSConfig(dsn);
|
|
314
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
315
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
316
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
317
|
+
await wsSql.exec("drop database sql_test");
|
|
318
|
+
await wsSql.exec("drop database sql_create");
|
|
319
|
+
await wsSql.exec("drop user user1");
|
|
320
|
+
await wsSql.exec("drop user user2");
|
|
321
|
+
await wsSql.exec("drop user token_user");
|
|
322
|
+
await wsSql.close();
|
|
323
|
+
wsConnectorPool_1.WebSocketConnectionPool.instance().destroyed();
|
|
324
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decimal.test.d.ts","sourceRoot":"","sources":["../../../test/sql/decimal.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const wsConnectorPool_1 = require("@src/client/wsConnectorPool");
|
|
4
|
+
const config_1 = require("@src/common/config");
|
|
5
|
+
const wsSql_1 = require("@src/sql/wsSql");
|
|
6
|
+
const utils_1 = require("@test-helpers/utils");
|
|
7
|
+
const log_1 = require("@src/common/log");
|
|
8
|
+
const constant_1 = require("@src/tmq/constant");
|
|
9
|
+
const wsTmq_1 = require("@src/tmq/wsTmq");
|
|
10
|
+
let dns = "ws://localhost:6041";
|
|
11
|
+
let createTopic = `create topic if not exists topic_decimal_test as select * from power.decimal_test`;
|
|
12
|
+
let dropTopic = `DROP TOPIC IF EXISTS topic_decimal_test;`;
|
|
13
|
+
(0, log_1.setLevel)("debug");
|
|
14
|
+
beforeAll(async () => {
|
|
15
|
+
let conf = new config_1.WSConfig(dns);
|
|
16
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
17
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
18
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
19
|
+
await wsSql.exec(dropTopic);
|
|
20
|
+
await wsSql.exec("drop database if exists power");
|
|
21
|
+
await wsSql.exec("create database if not exists power KEEP 3650 DURATION 10 BUFFER 16 WAL_LEVEL 1;");
|
|
22
|
+
await (0, utils_1.Sleep)(100);
|
|
23
|
+
await wsSql.exec("use power");
|
|
24
|
+
await wsSql.exec("CREATE STABLE if not exists decimal_test (ts timestamp, dec64 decimal(10,6), dec128 decimal(24,10), int1 int) TAGS (location binary(64), groupId int);");
|
|
25
|
+
await wsSql.exec(createTopic);
|
|
26
|
+
await wsSql.close();
|
|
27
|
+
});
|
|
28
|
+
const expectedResultsMap = new Map([
|
|
29
|
+
[
|
|
30
|
+
"-1234.654321",
|
|
31
|
+
{
|
|
32
|
+
dec128: "-123456789012.0987654321",
|
|
33
|
+
int1: 3,
|
|
34
|
+
location: "California",
|
|
35
|
+
groupId: 3,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
[
|
|
39
|
+
"-0.000654",
|
|
40
|
+
{
|
|
41
|
+
dec128: "-0.0009876543",
|
|
42
|
+
int1: 2,
|
|
43
|
+
location: "California",
|
|
44
|
+
groupId: 3,
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
[
|
|
48
|
+
"9876.123456",
|
|
49
|
+
{
|
|
50
|
+
dec128: "1234567890.0987654321",
|
|
51
|
+
int1: 1,
|
|
52
|
+
location: "California",
|
|
53
|
+
groupId: 3,
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
]);
|
|
57
|
+
describe("TDWebSocket.WsSql()", () => {
|
|
58
|
+
jest.setTimeout(20 * 1000);
|
|
59
|
+
test("insert recoder", async () => {
|
|
60
|
+
let conf = new config_1.WSConfig(dns);
|
|
61
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
62
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
63
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
64
|
+
let taosResult = await wsSql.exec("use power");
|
|
65
|
+
console.log(taosResult);
|
|
66
|
+
expect(taosResult).toBeTruthy();
|
|
67
|
+
taosResult = await wsSql.exec("describe decimal_test");
|
|
68
|
+
console.log(taosResult);
|
|
69
|
+
taosResult = await wsSql.exec('INSERT INTO d1001 USING decimal_test (location, groupid) TAGS ("California", 3) VALUES (NOW, "9876.123456", "1234567890.0987654321", 1) (NOW + 1a, "-0.000654", "-0.0009876543", 2) (NOW + 2a, "-1234.654321", "-123456789012.0987654321", 3)');
|
|
70
|
+
console.log(taosResult);
|
|
71
|
+
expect(taosResult.getAffectRows()).toBeGreaterThanOrEqual(3);
|
|
72
|
+
let wsRows = await wsSql.query("select * from decimal_test");
|
|
73
|
+
expect(wsRows).toBeTruthy();
|
|
74
|
+
let meta = wsRows.getMeta();
|
|
75
|
+
expect(meta).toBeTruthy();
|
|
76
|
+
console.log("wsRow:meta:=>", meta);
|
|
77
|
+
let count = 0;
|
|
78
|
+
while (await wsRows.next()) {
|
|
79
|
+
let result = wsRows.getData();
|
|
80
|
+
if (result != null && result.length > 0) {
|
|
81
|
+
if (expectedResultsMap.has(result[1])) {
|
|
82
|
+
console.log("result:=>", result);
|
|
83
|
+
const expected = expectedResultsMap.get(result[1]);
|
|
84
|
+
expect(result[2]).toBe(expected?.dec128);
|
|
85
|
+
expect(result[3]).toBe(expected?.int1);
|
|
86
|
+
expect(result[4]).toBe(expected?.location);
|
|
87
|
+
expect(result[5]).toBe(expected?.groupId);
|
|
88
|
+
count++;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
await wsSql.close();
|
|
93
|
+
expect(count).toBe(3);
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
test("normal Subscribe", async () => {
|
|
97
|
+
let configMap = new Map([
|
|
98
|
+
[constant_1.TMQConstants.GROUP_ID, "gId"],
|
|
99
|
+
[constant_1.TMQConstants.CONNECT_USER, (0, utils_1.testUsername)()],
|
|
100
|
+
[constant_1.TMQConstants.CONNECT_PASS, (0, utils_1.testPassword)()],
|
|
101
|
+
[constant_1.TMQConstants.AUTO_OFFSET_RESET, "earliest"],
|
|
102
|
+
[constant_1.TMQConstants.CLIENT_ID, "test_tmq_client"],
|
|
103
|
+
[constant_1.TMQConstants.WS_URL, dns],
|
|
104
|
+
[constant_1.TMQConstants.ENABLE_AUTO_COMMIT, "true"],
|
|
105
|
+
[constant_1.TMQConstants.AUTO_COMMIT_INTERVAL_MS, "1000"],
|
|
106
|
+
["session.timeout.ms", "10000"],
|
|
107
|
+
["max.poll.interval.ms", "30000"],
|
|
108
|
+
["msg.with.table.name", "true"],
|
|
109
|
+
]);
|
|
110
|
+
let consumer = await wsTmq_1.WsConsumer.newConsumer(configMap);
|
|
111
|
+
await consumer.subscribe(["topic_decimal_test"]);
|
|
112
|
+
let assignment = await consumer.assignment();
|
|
113
|
+
console.log(assignment);
|
|
114
|
+
let useTime = [];
|
|
115
|
+
let count = 0;
|
|
116
|
+
for (let i = 0; i < 5; i++) {
|
|
117
|
+
let startTime = new Date().getTime();
|
|
118
|
+
let res = await consumer.poll(500);
|
|
119
|
+
let currTime = new Date().getTime();
|
|
120
|
+
useTime.push(Math.abs(currTime - startTime));
|
|
121
|
+
for (let [key, value] of res) {
|
|
122
|
+
console.log(key, value.getMeta());
|
|
123
|
+
let data = value.getData();
|
|
124
|
+
if (data == null || data.length == 0) {
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
for (let record of data) {
|
|
128
|
+
console.log("record:=----------->", record);
|
|
129
|
+
if (expectedResultsMap.has(record[1])) {
|
|
130
|
+
const expected = expectedResultsMap.get(record[1]);
|
|
131
|
+
expect(record[2]).toBe(expected?.dec128);
|
|
132
|
+
expect(record[3]).toBe(expected?.int1);
|
|
133
|
+
expect(record[4]).toBe(expected?.location);
|
|
134
|
+
expect(record[5]).toBe(expected?.groupId);
|
|
135
|
+
count++;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
await consumer.unsubscribe();
|
|
141
|
+
await consumer.close();
|
|
142
|
+
expect(count).toBe(3);
|
|
143
|
+
});
|
|
144
|
+
afterAll(async () => {
|
|
145
|
+
let conf = new config_1.WSConfig(dns);
|
|
146
|
+
conf.setUser((0, utils_1.testUsername)());
|
|
147
|
+
conf.setPwd((0, utils_1.testPassword)());
|
|
148
|
+
let wsSql = await wsSql_1.WsSql.open(conf);
|
|
149
|
+
await wsSql.exec(dropTopic);
|
|
150
|
+
await wsSql.exec("drop database power");
|
|
151
|
+
await wsSql.close();
|
|
152
|
+
wsConnectorPool_1.WebSocketConnectionPool.instance().destroyed();
|
|
153
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql.failover.test.d.ts","sourceRoot":"","sources":["../../../../test/sql/failover/sql.failover.test.ts"],"names":[],"mappings":""}
|