sportident.js 1.3.0 → 1.3.2
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/SiCard/BaseSiCard.js +45 -8
- package/SiCard/BaseSiCard.js.map +1 -1
- package/SiCard/BaseSiCard.test.js +66 -64
- package/SiCard/BaseSiCard.test.js.map +1 -1
- package/SiCard/IRaceResultData.js +2 -1
- package/SiCard/ISiCard.js +2 -1
- package/SiCard/ISiCardExamples.js +2 -1
- package/SiCard/index.js +20 -2
- package/SiCard/index.js.map +1 -1
- package/SiCard/raceResultTools.js +52 -10
- package/SiCard/raceResultTools.js.map +1 -1
- package/SiCard/raceResultTools.test.js +51 -49
- package/SiCard/raceResultTools.test.js.map +1 -1
- package/SiCard/types/FCard.js +41 -4
- package/SiCard/types/FCard.js.map +1 -1
- package/SiCard/types/FCard.test.js +13 -11
- package/SiCard/types/FCard.test.js.map +1 -1
- package/SiCard/types/ModernSiCard.js +67 -25
- package/SiCard/types/ModernSiCard.js.map +1 -1
- package/SiCard/types/ModernSiCard.test.js +104 -69
- package/SiCard/types/ModernSiCard.test.js.map +1 -1
- package/SiCard/types/PCard.js +41 -4
- package/SiCard/types/PCard.js.map +1 -1
- package/SiCard/types/PCard.test.js +13 -11
- package/SiCard/types/PCard.test.js.map +1 -1
- package/SiCard/types/SIAC.js +8 -4
- package/SiCard/types/SIAC.js.map +1 -1
- package/SiCard/types/SIAC.test.js +73 -38
- package/SiCard/types/SIAC.test.js.map +1 -1
- package/SiCard/types/SiCard10.js +8 -4
- package/SiCard/types/SiCard10.js.map +1 -1
- package/SiCard/types/SiCard10.test.js +76 -41
- package/SiCard/types/SiCard10.test.js.map +1 -1
- package/SiCard/types/SiCard11.js +8 -4
- package/SiCard/types/SiCard11.js.map +1 -1
- package/SiCard/types/SiCard11.test.js +73 -38
- package/SiCard/types/SiCard11.test.js.map +1 -1
- package/SiCard/types/SiCard5.js +55 -16
- package/SiCard/types/SiCard5.js.map +1 -1
- package/SiCard/types/SiCard5.test.js +116 -81
- package/SiCard/types/SiCard5.test.js.map +1 -1
- package/SiCard/types/SiCard6.js +56 -17
- package/SiCard/types/SiCard6.js.map +1 -1
- package/SiCard/types/SiCard6.test.js +114 -79
- package/SiCard/types/SiCard6.test.js.map +1 -1
- package/SiCard/types/SiCard8.js +54 -16
- package/SiCard/types/SiCard8.js.map +1 -1
- package/SiCard/types/SiCard8.test.js +104 -69
- package/SiCard/types/SiCard8.test.js.map +1 -1
- package/SiCard/types/SiCard9.js +53 -15
- package/SiCard/types/SiCard9.js.map +1 -1
- package/SiCard/types/SiCard9.test.js +100 -65
- package/SiCard/types/SiCard9.test.js.map +1 -1
- package/SiCard/types/TCard.js +41 -4
- package/SiCard/types/TCard.js.map +1 -1
- package/SiCard/types/TCard.test.js +13 -11
- package/SiCard/types/TCard.test.js.map +1 -1
- package/SiCard/types/index.js +33 -15
- package/SiCard/types/index.js.map +1 -1
- package/SiCard/types/index.test.js +48 -13
- package/SiCard/types/index.test.js.map +1 -1
- package/SiCard/types/modernSiCardExamples.js +58 -21
- package/SiCard/types/modernSiCardExamples.js.map +1 -1
- package/SiCard/types/siCard5Examples.js +43 -6
- package/SiCard/types/siCard5Examples.js.map +1 -1
- package/SiCard/types/siCard6Examples.js +47 -10
- package/SiCard/types/siCard6Examples.js.map +1 -1
- package/SiCard/types/siCard8Examples.js +45 -8
- package/SiCard/types/siCard8Examples.js.map +1 -1
- package/SiCard/types/siCard9Examples.js +45 -8
- package/SiCard/types/siCard9Examples.js.map +1 -1
- package/SiDevice/ISiDevice.js +45 -6
- package/SiDevice/ISiDevice.js.map +1 -1
- package/SiDevice/ISiDeviceDriver.js +41 -3
- package/SiDevice/ISiDeviceDriver.js.map +1 -1
- package/SiDevice/SiDevice.js +57 -20
- package/SiDevice/SiDevice.js.map +1 -1
- package/SiDevice/SiDevice.test.js +138 -103
- package/SiDevice/SiDevice.test.js.map +1 -1
- package/SiDevice/WebSerialSiDeviceDriver.js +49 -11
- package/SiDevice/WebSerialSiDeviceDriver.js.map +1 -1
- package/SiDevice/WebUsbSiDeviceDriver.js +49 -11
- package/SiDevice/WebUsbSiDeviceDriver.js.map +1 -1
- package/SiDevice/index.js +5 -1
- package/SiDevice/index.js.map +1 -1
- package/SiDevice/testUtils/index.js +7 -2
- package/SiDevice/testUtils/index.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriver.js +47 -10
- package/SiDevice/testUtils/testISiDeviceDriver.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js +52 -15
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js.map +1 -1
- package/SiStation/BaseSiStation.js +55 -18
- package/SiStation/BaseSiStation.js.map +1 -1
- package/SiStation/BaseSiStation.test.js +95 -60
- package/SiStation/BaseSiStation.test.js.map +1 -1
- package/SiStation/CoupledSiStation.js +53 -16
- package/SiStation/CoupledSiStation.js.map +1 -1
- package/SiStation/CoupledSiStation.test.js +62 -27
- package/SiStation/CoupledSiStation.test.js.map +1 -1
- package/SiStation/ISiMainStation.js +43 -4
- package/SiStation/ISiMainStation.js.map +1 -1
- package/SiStation/ISiSendTask.js +5 -2
- package/SiStation/ISiSendTask.js.map +1 -1
- package/SiStation/ISiStation.js +8 -5
- package/SiStation/ISiStation.js.map +1 -1
- package/SiStation/ISiTargetMultiplexer.js +45 -6
- package/SiStation/ISiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiMainStation.js +56 -19
- package/SiStation/SiMainStation.js.map +1 -1
- package/SiStation/SiMainStation.test.js +123 -88
- package/SiStation/SiMainStation.test.js.map +1 -1
- package/SiStation/SiSendTask.js +48 -11
- package/SiStation/SiSendTask.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.js +83 -46
- package/SiStation/SiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.targeting.test.js +77 -42
- package/SiStation/SiTargetMultiplexer.targeting.test.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.test.js +236 -201
- package/SiStation/SiTargetMultiplexer.test.js.map +1 -1
- package/SiStation/index.js +13 -5
- package/SiStation/index.js.map +1 -1
- package/SiStation/siStationExamples.js +43 -6
- package/SiStation/siStationExamples.js.map +1 -1
- package/constants.js +7 -4
- package/constants.js.map +1 -1
- package/constants.test.js +47 -12
- package/constants.test.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.js +5 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js +41 -6
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/IFakeSiCard.js +2 -1
- package/fakes/FakeSiCard/index.js +20 -2
- package/fakes/FakeSiCard/index.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.js +49 -12
- package/fakes/FakeSiCard/types/FakeModernSiCard.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js +60 -25
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSIAC.js +12 -8
- package/fakes/FakeSiCard/types/FakeSIAC.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard10.js +12 -8
- package/fakes/FakeSiCard/types/FakeSiCard10.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard11.js +12 -8
- package/fakes/FakeSiCard/types/FakeSiCard11.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.js +49 -12
- package/fakes/FakeSiCard/types/FakeSiCard5.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js +55 -20
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.js +49 -12
- package/fakes/FakeSiCard/types/FakeSiCard6.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js +60 -25
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard8.js +11 -7
- package/fakes/FakeSiCard/types/FakeSiCard8.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard9.js +11 -7
- package/fakes/FakeSiCard/types/FakeSiCard9.js.map +1 -1
- package/fakes/FakeSiCard/types/index.js +17 -7
- package/fakes/FakeSiCard/types/index.js.map +1 -1
- package/fakes/FakeSiDeviceDriver.js +47 -10
- package/fakes/FakeSiDeviceDriver.js.map +1 -1
- package/fakes/FakeSiMainStation.js +66 -29
- package/fakes/FakeSiMainStation.js.map +1 -1
- package/fakes/FakeSiMainStation.test.js +78 -43
- package/fakes/FakeSiMainStation.test.js.map +1 -1
- package/fakes/IFakeSiMainStation.js +39 -2
- package/fakes/IFakeSiMainStation.js.map +1 -1
- package/fakes/index.js +20 -2
- package/fakes/index.js.map +1 -1
- package/index.js +46 -10
- package/index.js.map +1 -1
- package/package.json +2 -3
- package/siProtocol.js +83 -36
- package/siProtocol.js.map +1 -1
- package/siProtocol.test.js +345 -308
- package/siProtocol.test.js.map +1 -1
- package/storage/SiArray.js +8 -4
- package/storage/SiArray.js.map +1 -1
- package/storage/SiArray.test.js +58 -56
- package/storage/SiArray.test.js.map +1 -1
- package/storage/SiBool.js +9 -5
- package/storage/SiBool.js.map +1 -1
- package/storage/SiBool.test.js +65 -63
- package/storage/SiBool.test.js.map +1 -1
- package/storage/SiDataType.js +14 -9
- package/storage/SiDataType.js.map +1 -1
- package/storage/SiDataType.test.js +25 -23
- package/storage/SiDataType.test.js.map +1 -1
- package/storage/SiDict.js +8 -4
- package/storage/SiDict.js.map +1 -1
- package/storage/SiDict.test.js +54 -52
- package/storage/SiDict.test.js.map +1 -1
- package/storage/SiEnum.js +44 -7
- package/storage/SiEnum.js.map +1 -1
- package/storage/SiEnum.test.js +61 -59
- package/storage/SiEnum.test.js.map +1 -1
- package/storage/SiFieldValue.js +8 -4
- package/storage/SiFieldValue.js.map +1 -1
- package/storage/SiFieldValue.test.js +27 -25
- package/storage/SiFieldValue.test.js.map +1 -1
- package/storage/SiInt.js +9 -5
- package/storage/SiInt.js.map +1 -1
- package/storage/SiInt.test.js +65 -63
- package/storage/SiInt.test.js.map +1 -1
- package/storage/SiModified.js +9 -5
- package/storage/SiModified.js.map +1 -1
- package/storage/SiModified.test.js +77 -75
- package/storage/SiModified.test.js.map +1 -1
- package/storage/SiStorage.js +9 -4
- package/storage/SiStorage.js.map +1 -1
- package/storage/SiStorage.test.js +67 -32
- package/storage/SiStorage.test.js.map +1 -1
- package/storage/index.js +28 -11
- package/storage/index.js.map +1 -1
- package/storage/index.test.js +128 -93
- package/storage/index.test.js.map +1 -1
- package/storage/interfaces.js +41 -3
- package/storage/interfaces.js.map +1 -1
- package/storage/siStringEncoding.js +5 -1
- package/storage/siStringEncoding.js.map +1 -1
- package/testUtils.js +28 -16
- package/testUtils.js.map +1 -1
- package/testUtils.test.js +100 -65
- package/testUtils.test.js.map +1 -1
- package/utils/NumberRange.js +6 -2
- package/utils/NumberRange.js.map +1 -1
- package/utils/NumberRange.test.js +56 -54
- package/utils/NumberRange.test.js.map +1 -1
- package/utils/NumberRangeRegistry.js +42 -5
- package/utils/NumberRangeRegistry.js.map +1 -1
- package/utils/NumberRangeRegistry.test.js +37 -35
- package/utils/NumberRangeRegistry.test.js.map +1 -1
- package/utils/bytes.js +22 -11
- package/utils/bytes.js.map +1 -1
- package/utils/bytes.test.js +133 -98
- package/utils/bytes.test.js.map +1 -1
- package/utils/errors.js +11 -4
- package/utils/errors.js.map +1 -1
- package/utils/errors.test.js +51 -16
- package/utils/errors.test.js.map +1 -1
- package/utils/events.js +41 -3
- package/utils/events.js.map +1 -1
- package/utils/events.test.js +56 -21
- package/utils/events.test.js.map +1 -1
- package/utils/general.js +11 -4
- package/utils/general.js.map +1 -1
- package/utils/general.test.js +112 -77
- package/utils/general.test.js.map +1 -1
- package/utils/index.js +24 -8
- package/utils/index.js.map +1 -1
- package/utils/mixins.js +5 -1
- package/utils/mixins.js.map +1 -1
- package/utils/mixins.test.js +48 -13
- package/utils/mixins.test.js.map +1 -1
- package/utils/typed.js +4 -1
- package/utils/typed.js.map +1 -1
|
@@ -1,3 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
1
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,37 +41,38 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
41
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
42
|
});
|
|
9
43
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
44
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
+
const globals_1 = require("@jest/globals");
|
|
46
|
+
const constants_1 = require("../constants");
|
|
47
|
+
const siProtocol = __importStar(require("../siProtocol"));
|
|
48
|
+
const testUtils = __importStar(require("../testUtils"));
|
|
49
|
+
const ISiDevice_1 = require("../SiDevice/ISiDevice");
|
|
50
|
+
const SiDevice_1 = require("../SiDevice/SiDevice");
|
|
51
|
+
const ISiTargetMultiplexer_1 = require("./ISiTargetMultiplexer");
|
|
52
|
+
const ISiSendTask_1 = require("./ISiSendTask");
|
|
53
|
+
const SiTargetMultiplexer_1 = require("./SiTargetMultiplexer");
|
|
19
54
|
testUtils.useFakeTimers();
|
|
20
55
|
function mockDriver(driver) {
|
|
21
56
|
return driver;
|
|
22
57
|
}
|
|
23
|
-
describe('SiTargetMultiplexer', () => {
|
|
24
|
-
test('is unique per device', () => {
|
|
25
|
-
const siDevice = new SiDevice('isUniquePerDevice', {
|
|
58
|
+
(0, globals_1.describe)('SiTargetMultiplexer', () => {
|
|
59
|
+
(0, globals_1.test)('is unique per device', () => {
|
|
60
|
+
const siDevice = new SiDevice_1.SiDevice('isUniquePerDevice', {
|
|
26
61
|
driver: mockDriver({ name: 'FakeSiDevice' })
|
|
27
62
|
});
|
|
28
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
29
|
-
const muxer1 = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
30
|
-
expect(muxer1 instanceof SiTargetMultiplexer).toBe(true);
|
|
31
|
-
const muxer2 = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
32
|
-
expect(muxer2).toBe(muxer1);
|
|
63
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
64
|
+
const muxer1 = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
65
|
+
(0, globals_1.expect)(muxer1 instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
66
|
+
const muxer2 = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
67
|
+
(0, globals_1.expect)(muxer2).toBe(muxer1);
|
|
33
68
|
});
|
|
34
|
-
test('handles receiving', () => {
|
|
35
|
-
const siDevice = new SiDevice('handlesReceiving', {
|
|
69
|
+
(0, globals_1.test)('handles receiving', () => {
|
|
70
|
+
const siDevice = new SiDevice_1.SiDevice('handlesReceiving', {
|
|
36
71
|
driver: mockDriver({})
|
|
37
72
|
});
|
|
38
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
39
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
40
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
73
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
74
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
75
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
41
76
|
const receivedMessages = [];
|
|
42
77
|
const recordMessage = (e) => {
|
|
43
78
|
receivedMessages.push(e.message);
|
|
@@ -53,186 +88,186 @@ describe('SiTargetMultiplexer', () => {
|
|
|
53
88
|
receivedRemoteMessages.push(e.message);
|
|
54
89
|
};
|
|
55
90
|
muxer.addEventListener('remoteMessage', recordRemoteMessage);
|
|
56
|
-
const directOnlyCommands = Object.keys(DIRECT_DEVICE_INITIATED_COMMANDS).map(Number);
|
|
91
|
+
const directOnlyCommands = Object.keys(SiTargetMultiplexer_1.DIRECT_DEVICE_INITIATED_COMMANDS).map(Number);
|
|
57
92
|
const randomMessage1 = testUtils.getRandomMessage({
|
|
58
93
|
command: testUtils.getRandomByteExcept(directOnlyCommands)
|
|
59
94
|
});
|
|
60
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage1)));
|
|
61
|
-
expect(receivedMessages).toEqual([randomMessage1]);
|
|
62
|
-
expect(receivedDirectMessages).toEqual([]);
|
|
63
|
-
expect(receivedRemoteMessages).toEqual([]);
|
|
95
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage1)));
|
|
96
|
+
(0, globals_1.expect)(receivedMessages).toEqual([randomMessage1]);
|
|
97
|
+
(0, globals_1.expect)(receivedDirectMessages).toEqual([]);
|
|
98
|
+
(0, globals_1.expect)(receivedRemoteMessages).toEqual([]);
|
|
64
99
|
const randomMessage2 = testUtils.getRandomMessage({
|
|
65
100
|
command: testUtils.getRandomByteExcept(directOnlyCommands)
|
|
66
101
|
});
|
|
67
|
-
muxer.target = SiTargetMultiplexerTarget.Direct;
|
|
68
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage2)));
|
|
69
|
-
expect(receivedMessages).toEqual([randomMessage1, randomMessage2]);
|
|
70
|
-
expect(receivedDirectMessages).toEqual([randomMessage2]);
|
|
71
|
-
expect(receivedRemoteMessages).toEqual([]);
|
|
102
|
+
muxer.target = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct;
|
|
103
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage2)));
|
|
104
|
+
(0, globals_1.expect)(receivedMessages).toEqual([randomMessage1, randomMessage2]);
|
|
105
|
+
(0, globals_1.expect)(receivedDirectMessages).toEqual([randomMessage2]);
|
|
106
|
+
(0, globals_1.expect)(receivedRemoteMessages).toEqual([]);
|
|
72
107
|
const randomMessage3 = testUtils.getRandomMessage({
|
|
73
108
|
command: testUtils.getRandomByteExcept(directOnlyCommands)
|
|
74
109
|
});
|
|
75
|
-
muxer.target = SiTargetMultiplexerTarget.Remote;
|
|
76
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage3)));
|
|
77
|
-
expect(receivedMessages).toEqual([randomMessage1, randomMessage2, randomMessage3]);
|
|
78
|
-
expect(receivedDirectMessages).toEqual([randomMessage2]);
|
|
79
|
-
expect(receivedRemoteMessages).toEqual([randomMessage3]);
|
|
110
|
+
muxer.target = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Remote;
|
|
111
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage3)));
|
|
112
|
+
(0, globals_1.expect)(receivedMessages).toEqual([randomMessage1, randomMessage2, randomMessage3]);
|
|
113
|
+
(0, globals_1.expect)(receivedDirectMessages).toEqual([randomMessage2]);
|
|
114
|
+
(0, globals_1.expect)(receivedRemoteMessages).toEqual([randomMessage3]);
|
|
80
115
|
muxer.removeEventListener('message', recordMessage);
|
|
81
116
|
muxer.removeEventListener('directMessage', recordDirectMessage);
|
|
82
117
|
muxer.removeEventListener('remoteMessage', recordRemoteMessage);
|
|
83
118
|
});
|
|
84
|
-
test('handles simple sending', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
85
|
-
const siDevice = new SiDevice('handlesSending0', {
|
|
119
|
+
(0, globals_1.test)('handles simple sending', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
120
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending0', {
|
|
86
121
|
driver: mockDriver({
|
|
87
122
|
send: () => Promise.resolve()
|
|
88
123
|
})
|
|
89
124
|
});
|
|
90
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
91
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
92
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
125
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
126
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
127
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
93
128
|
const randomMessage = testUtils.getRandomMessage({});
|
|
94
129
|
const timeState = { sendingFinished: false };
|
|
95
130
|
muxer.sendMessageToLatestTarget(randomMessage, 0, 1).then((responses) => {
|
|
96
|
-
expect(responses.length).toBe(0);
|
|
97
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
131
|
+
(0, globals_1.expect)(responses.length).toBe(0);
|
|
132
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
98
133
|
timeState.sendingFinished = true;
|
|
99
134
|
});
|
|
100
135
|
yield testUtils.advanceTimersByTime(0);
|
|
101
|
-
expect(timeState).toEqual({ sendingFinished: true });
|
|
136
|
+
(0, globals_1.expect)(timeState).toEqual({ sendingFinished: true });
|
|
102
137
|
}));
|
|
103
|
-
test('handles sending and waiting for 1 response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
104
|
-
const siDevice = new SiDevice('handlesSending1', {
|
|
138
|
+
(0, globals_1.test)('handles sending and waiting for 1 response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
139
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending1', {
|
|
105
140
|
driver: mockDriver({
|
|
106
141
|
send: () => Promise.resolve()
|
|
107
142
|
})
|
|
108
143
|
});
|
|
109
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
110
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
111
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
144
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
145
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
146
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
112
147
|
const randomMessage = testUtils.getRandomMessage({});
|
|
113
148
|
const timeState = { sendingFinished: false };
|
|
114
149
|
muxer.sendMessageToLatestTarget(randomMessage, 1, 2).then((responses) => {
|
|
115
|
-
expect(responses.length).toBe(1);
|
|
116
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
150
|
+
(0, globals_1.expect)(responses.length).toBe(1);
|
|
151
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
117
152
|
timeState.sendingFinished = true;
|
|
118
153
|
});
|
|
119
154
|
setTimeout(() => {
|
|
120
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
155
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
121
156
|
}, 1);
|
|
122
157
|
yield testUtils.advanceTimersByTime(0);
|
|
123
|
-
expect(timeState).toEqual({ sendingFinished: false });
|
|
158
|
+
(0, globals_1.expect)(timeState).toEqual({ sendingFinished: false });
|
|
124
159
|
yield testUtils.advanceTimersByTime(1);
|
|
125
|
-
expect(timeState).toEqual({ sendingFinished: true });
|
|
160
|
+
(0, globals_1.expect)(timeState).toEqual({ sendingFinished: true });
|
|
126
161
|
}));
|
|
127
|
-
test('handles sending and waiting for 1 NAK', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
128
|
-
const siDevice = new SiDevice('handlesSending1NAK', {
|
|
162
|
+
(0, globals_1.test)('handles sending and waiting for 1 NAK', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
163
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending1NAK', {
|
|
129
164
|
driver: mockDriver({
|
|
130
165
|
send: () => Promise.resolve()
|
|
131
166
|
})
|
|
132
167
|
});
|
|
133
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
134
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
135
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
168
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
169
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
170
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
136
171
|
const randomMessage = testUtils.getRandomMessage({});
|
|
137
172
|
const timeState = { sendingFailed: false };
|
|
138
173
|
muxer.sendMessageToLatestTarget(randomMessage, 1, 2).catch(() => {
|
|
139
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
174
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
140
175
|
timeState.sendingFailed = true;
|
|
141
176
|
});
|
|
142
177
|
setTimeout(() => {
|
|
143
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render({ mode: proto.NAK })));
|
|
178
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render({ mode: constants_1.proto.NAK })));
|
|
144
179
|
}, 1);
|
|
145
180
|
yield testUtils.advanceTimersByTime(0);
|
|
146
|
-
expect(timeState).toEqual({ sendingFailed: false });
|
|
181
|
+
(0, globals_1.expect)(timeState).toEqual({ sendingFailed: false });
|
|
147
182
|
yield testUtils.advanceTimersByTime(1);
|
|
148
|
-
expect(timeState).toEqual({ sendingFailed: true });
|
|
183
|
+
(0, globals_1.expect)(timeState).toEqual({ sendingFailed: true });
|
|
149
184
|
}));
|
|
150
|
-
test('handles sending and waiting for 2 responses', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
151
|
-
const siDevice = new SiDevice('handlesSending2', {
|
|
185
|
+
(0, globals_1.test)('handles sending and waiting for 2 responses', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
186
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending2', {
|
|
152
187
|
driver: mockDriver({
|
|
153
188
|
send: () => Promise.resolve()
|
|
154
189
|
})
|
|
155
190
|
});
|
|
156
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
157
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
158
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
191
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
192
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
193
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
159
194
|
const randomMessage = testUtils.getRandomMessage({});
|
|
160
195
|
const timeState = { receive1: false, receive2: false, sendingFinished: false };
|
|
161
196
|
muxer.sendMessageToLatestTarget(randomMessage, 2, 3).then((responses) => {
|
|
162
|
-
expect(responses.length).toBe(2);
|
|
163
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
197
|
+
(0, globals_1.expect)(responses.length).toBe(2);
|
|
198
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
164
199
|
timeState.sendingFinished = true;
|
|
165
200
|
});
|
|
166
201
|
setTimeout(() => {
|
|
167
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
202
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
168
203
|
timeState.receive1 = true;
|
|
169
204
|
}, 1);
|
|
170
205
|
setTimeout(() => {
|
|
171
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
206
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
172
207
|
timeState.receive2 = true;
|
|
173
208
|
}, 2);
|
|
174
209
|
yield testUtils.advanceTimersByTime(0);
|
|
175
|
-
expect(timeState).toEqual({ receive1: false, receive2: false, sendingFinished: false });
|
|
210
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: false, receive2: false, sendingFinished: false });
|
|
176
211
|
yield testUtils.advanceTimersByTime(1);
|
|
177
|
-
expect(timeState).toEqual({ receive1: true, receive2: false, sendingFinished: false });
|
|
212
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, receive2: false, sendingFinished: false });
|
|
178
213
|
yield testUtils.nTimesAsync(10, () => testUtils.advanceTimersByTime(1));
|
|
179
|
-
expect(timeState).toEqual({ receive1: true, receive2: true, sendingFinished: true });
|
|
214
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, receive2: true, sendingFinished: true });
|
|
180
215
|
}));
|
|
181
|
-
test('handles sending and timing out waiting for 1 response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
182
|
-
const siDevice = new SiDevice('handlesSending1Timeout', {
|
|
216
|
+
(0, globals_1.test)('handles sending and timing out waiting for 1 response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
217
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending1Timeout', {
|
|
183
218
|
driver: mockDriver({
|
|
184
219
|
send: () => Promise.resolve()
|
|
185
220
|
})
|
|
186
221
|
});
|
|
187
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
188
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
189
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
222
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
223
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
224
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
190
225
|
const randomMessage = testUtils.getRandomMessage({});
|
|
191
226
|
const timeState = { timedOut: false };
|
|
192
227
|
muxer.sendMessageToLatestTarget(randomMessage, 1, 1).catch(() => {
|
|
193
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
228
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
194
229
|
timeState.timedOut = true;
|
|
195
230
|
});
|
|
196
231
|
yield testUtils.advanceTimersByTime(0);
|
|
197
|
-
expect(timeState).toEqual({ timedOut: false });
|
|
232
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: false });
|
|
198
233
|
yield testUtils.advanceTimersByTime(1);
|
|
199
|
-
expect(timeState).toEqual({ timedOut: true });
|
|
234
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: true });
|
|
200
235
|
}));
|
|
201
|
-
test('handles sending and timing out waiting for 2 responses', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
202
|
-
const siDevice = new SiDevice('handlesSending2Timeout', {
|
|
236
|
+
(0, globals_1.test)('handles sending and timing out waiting for 2 responses', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
237
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSending2Timeout', {
|
|
203
238
|
driver: mockDriver({
|
|
204
239
|
send: () => Promise.resolve()
|
|
205
240
|
})
|
|
206
241
|
});
|
|
207
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
208
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
209
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
242
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
243
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
244
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
210
245
|
const randomMessage = testUtils.getRandomMessage({});
|
|
211
246
|
const timeState = { receive1: false, timedOut: false };
|
|
212
247
|
muxer.sendMessageToLatestTarget(randomMessage, 2, 2).catch(() => {
|
|
213
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
248
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
214
249
|
timeState.timedOut = true;
|
|
215
250
|
});
|
|
216
251
|
setTimeout(() => {
|
|
217
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
252
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render(randomMessage)));
|
|
218
253
|
timeState.receive1 = true;
|
|
219
254
|
}, 1);
|
|
220
255
|
yield testUtils.advanceTimersByTime(0);
|
|
221
|
-
expect(timeState).toEqual({ receive1: false, timedOut: false });
|
|
256
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: false, timedOut: false });
|
|
222
257
|
yield testUtils.advanceTimersByTime(1);
|
|
223
|
-
expect(timeState).toEqual({ receive1: true, timedOut: false });
|
|
258
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, timedOut: false });
|
|
224
259
|
yield testUtils.advanceTimersByTime(1);
|
|
225
|
-
expect(timeState).toEqual({ receive1: true, timedOut: true });
|
|
260
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, timedOut: true });
|
|
226
261
|
}));
|
|
227
|
-
test('does not time out, if it already succeeded', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
228
|
-
const siDevice = new SiDevice('noTimeoutIfSucceeded', {
|
|
262
|
+
(0, globals_1.test)('does not time out, if it already succeeded', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
263
|
+
const siDevice = new SiDevice_1.SiDevice('noTimeoutIfSucceeded', {
|
|
229
264
|
driver: mockDriver({
|
|
230
265
|
send: () => Promise.resolve()
|
|
231
266
|
})
|
|
232
267
|
});
|
|
233
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
234
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
235
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
268
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
269
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
270
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
236
271
|
const randomMessage = testUtils.getRandomMessage({});
|
|
237
272
|
const timeoutInMiliseconds = 2;
|
|
238
273
|
const timeState = {
|
|
@@ -250,43 +285,43 @@ describe('SiTargetMultiplexer', () => {
|
|
|
250
285
|
timeState.timedOut = true;
|
|
251
286
|
});
|
|
252
287
|
setTimeout(() => {
|
|
253
|
-
muxer._test.sendQueue[0].state = SiSendTaskState.Succeeded;
|
|
288
|
+
muxer._test.sendQueue[0].state = ISiSendTask_1.SiSendTaskState.Succeeded;
|
|
254
289
|
timeState.madeSuccessful = true;
|
|
255
290
|
}, 1);
|
|
256
291
|
setTimeout(() => {
|
|
257
292
|
timeState.timeoutPassed = true;
|
|
258
293
|
}, timeoutInMiliseconds);
|
|
259
294
|
yield testUtils.advanceTimersByTime(0);
|
|
260
|
-
expect(timeState).toEqual({
|
|
295
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
261
296
|
madeSuccessful: false,
|
|
262
297
|
timeoutPassed: false,
|
|
263
298
|
timedOut: false,
|
|
264
299
|
succeeded: false
|
|
265
300
|
});
|
|
266
301
|
yield testUtils.advanceTimersByTime(1);
|
|
267
|
-
expect(timeState).toEqual({
|
|
302
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
268
303
|
madeSuccessful: true,
|
|
269
304
|
timeoutPassed: false,
|
|
270
305
|
timedOut: false,
|
|
271
306
|
succeeded: false
|
|
272
307
|
});
|
|
273
308
|
yield testUtils.advanceTimersByTime(1);
|
|
274
|
-
expect(timeState).toEqual({
|
|
309
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
275
310
|
madeSuccessful: true,
|
|
276
311
|
timeoutPassed: true,
|
|
277
312
|
timedOut: false,
|
|
278
313
|
succeeded: false
|
|
279
314
|
});
|
|
280
315
|
}));
|
|
281
|
-
test('does not succeed, if response for different command arrives', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
282
|
-
const siDevice = new SiDevice('differentCommand', {
|
|
316
|
+
(0, globals_1.test)('does not succeed, if response for different command arrives', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
317
|
+
const siDevice = new SiDevice_1.SiDevice('differentCommand', {
|
|
283
318
|
driver: mockDriver({
|
|
284
319
|
send: () => Promise.resolve()
|
|
285
320
|
})
|
|
286
321
|
});
|
|
287
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
288
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
289
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
322
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
323
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
324
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
290
325
|
const randomMessage = testUtils.getRandomMessage({});
|
|
291
326
|
const timeState = { receive1: false, timedOut: false, succeeded: false };
|
|
292
327
|
muxer
|
|
@@ -295,106 +330,106 @@ describe('SiTargetMultiplexer', () => {
|
|
|
295
330
|
timeState.succeeded = true;
|
|
296
331
|
})
|
|
297
332
|
.catch(() => {
|
|
298
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
333
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
299
334
|
timeState.timedOut = true;
|
|
300
335
|
});
|
|
301
336
|
setTimeout(() => {
|
|
302
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render({
|
|
337
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render({
|
|
303
338
|
command: testUtils.getRandomByteExcept([randomMessage.command]),
|
|
304
339
|
parameters: randomMessage.parameters
|
|
305
340
|
})));
|
|
306
341
|
timeState.receive1 = true;
|
|
307
342
|
}, 1);
|
|
308
343
|
yield testUtils.advanceTimersByTime(0);
|
|
309
|
-
expect(timeState).toEqual({ receive1: false, timedOut: false, succeeded: false });
|
|
344
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: false, timedOut: false, succeeded: false });
|
|
310
345
|
yield testUtils.advanceTimersByTime(1);
|
|
311
|
-
expect(timeState).toEqual({ receive1: true, timedOut: false, succeeded: false });
|
|
346
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, timedOut: false, succeeded: false });
|
|
312
347
|
yield testUtils.advanceTimersByTime(1);
|
|
313
|
-
expect(timeState).toEqual({ receive1: true, timedOut: true, succeeded: false });
|
|
348
|
+
(0, globals_1.expect)(timeState).toEqual({ receive1: true, timedOut: true, succeeded: false });
|
|
314
349
|
}));
|
|
315
|
-
test('cannot send to unopened SiDevice', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
316
|
-
const siDevice = new SiDevice('cannotSendToUnopened', {
|
|
350
|
+
(0, globals_1.test)('cannot send to unopened SiDevice', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
351
|
+
const siDevice = new SiDevice_1.SiDevice('cannotSendToUnopened', {
|
|
317
352
|
driver: mockDriver({})
|
|
318
353
|
});
|
|
319
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
320
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
354
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
355
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
321
356
|
const randomMessage = testUtils.getRandomMessage({});
|
|
322
357
|
const timeState = { timedOut: false };
|
|
323
358
|
muxer.sendMessageToLatestTarget(randomMessage, 1, 1).catch(() => {
|
|
324
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
359
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
325
360
|
timeState.timedOut = true;
|
|
326
361
|
});
|
|
327
362
|
yield testUtils.advanceTimersByTime(0);
|
|
328
|
-
expect(timeState).toEqual({ timedOut: false });
|
|
363
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: false });
|
|
329
364
|
yield testUtils.advanceTimersByTime(1);
|
|
330
|
-
expect(timeState).toEqual({ timedOut: true });
|
|
365
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: true });
|
|
331
366
|
}));
|
|
332
|
-
test('handles sending as soon as device is openend', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
333
|
-
const siDevice = new SiDevice('handlesSendingAsSoonAsOpened', {
|
|
367
|
+
(0, globals_1.test)('handles sending as soon as device is openend', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
368
|
+
const siDevice = new SiDevice_1.SiDevice('handlesSendingAsSoonAsOpened', {
|
|
334
369
|
driver: mockDriver({
|
|
335
370
|
send: () => Promise.resolve()
|
|
336
371
|
})
|
|
337
372
|
});
|
|
338
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
339
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
373
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
374
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
340
375
|
const randomMessage = testUtils.getRandomMessage({});
|
|
341
376
|
const timeState = { deviceOpened: false, sendingFinished: false };
|
|
342
377
|
muxer.sendMessageToLatestTarget(randomMessage, 0, 3).then(() => {
|
|
343
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
378
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
344
379
|
timeState.sendingFinished = true;
|
|
345
380
|
});
|
|
346
381
|
setTimeout(() => {
|
|
347
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
382
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
348
383
|
timeState.deviceOpened = true;
|
|
349
384
|
}, 1);
|
|
350
385
|
yield testUtils.advanceTimersByTime(0);
|
|
351
|
-
expect(timeState).toEqual({ deviceOpened: false, sendingFinished: false });
|
|
386
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: false, sendingFinished: false });
|
|
352
387
|
yield testUtils.advanceTimersByTime(1);
|
|
353
|
-
expect(timeState).toEqual({ deviceOpened: true, sendingFinished: false });
|
|
388
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, sendingFinished: false });
|
|
354
389
|
yield testUtils.advanceTimersByTime(1);
|
|
355
|
-
expect(timeState).toEqual({ deviceOpened: true, sendingFinished: true });
|
|
390
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, sendingFinished: true });
|
|
356
391
|
}));
|
|
357
|
-
test('sends all as soon as device is openend', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
358
|
-
const siDevice = new SiDevice('sendsAllAsSoonAsOpened', {
|
|
392
|
+
(0, globals_1.test)('sends all as soon as device is openend', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
393
|
+
const siDevice = new SiDevice_1.SiDevice('sendsAllAsSoonAsOpened', {
|
|
359
394
|
driver: mockDriver({
|
|
360
395
|
send: () => Promise.resolve()
|
|
361
396
|
})
|
|
362
397
|
});
|
|
363
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
364
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
398
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
399
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
365
400
|
const randomMessage = testUtils.getRandomMessage({});
|
|
366
401
|
const timeState = { deviceOpened: false, numSuccess: 0, allSendingFinished: false };
|
|
367
402
|
const getMuxerPromise = () => muxer.sendMessageToLatestTarget(randomMessage, 0, 4).then(() => {
|
|
368
403
|
timeState.numSuccess = (timeState.numSuccess || 0) + 1;
|
|
369
404
|
});
|
|
370
405
|
Promise.all([getMuxerPromise(), getMuxerPromise()]).then(() => {
|
|
371
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
406
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
372
407
|
timeState.allSendingFinished = true;
|
|
373
408
|
});
|
|
374
409
|
setTimeout(() => {
|
|
375
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
410
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
376
411
|
timeState.deviceOpened = true;
|
|
377
412
|
}, 1);
|
|
378
413
|
yield testUtils.advanceTimersByTime(0);
|
|
379
|
-
expect(timeState).toEqual({ deviceOpened: false, numSuccess: 0, allSendingFinished: false });
|
|
414
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: false, numSuccess: 0, allSendingFinished: false });
|
|
380
415
|
yield testUtils.advanceTimersByTime(1);
|
|
381
|
-
expect(timeState).toEqual({ deviceOpened: true, numSuccess: 0, allSendingFinished: false });
|
|
416
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, numSuccess: 0, allSendingFinished: false });
|
|
382
417
|
yield testUtils.advanceTimersByTime(1);
|
|
383
|
-
expect(timeState).toEqual({ deviceOpened: true, numSuccess: 1, allSendingFinished: false });
|
|
418
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, numSuccess: 1, allSendingFinished: false });
|
|
384
419
|
yield testUtils.advanceTimersByTime(1);
|
|
385
|
-
expect(timeState).toEqual({ deviceOpened: true, numSuccess: 2, allSendingFinished: false });
|
|
420
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, numSuccess: 2, allSendingFinished: false });
|
|
386
421
|
yield testUtils.advanceTimersByTime(0); // for Promise.all
|
|
387
|
-
expect(timeState).toEqual({ deviceOpened: true, numSuccess: 2, allSendingFinished: true });
|
|
422
|
+
(0, globals_1.expect)(timeState).toEqual({ deviceOpened: true, numSuccess: 2, allSendingFinished: true });
|
|
388
423
|
}));
|
|
389
|
-
test('aborts sending as soon as device is closed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
390
|
-
const siDevice = new SiDevice('abortsAllAsSoonAsClosed', {
|
|
424
|
+
(0, globals_1.test)('aborts sending as soon as device is closed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
425
|
+
const siDevice = new SiDevice_1.SiDevice('abortsAllAsSoonAsClosed', {
|
|
391
426
|
driver: mockDriver({
|
|
392
427
|
send: () => Promise.resolve()
|
|
393
428
|
})
|
|
394
429
|
});
|
|
395
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
396
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
397
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
430
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
431
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
432
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
398
433
|
const randomMessage = testUtils.getRandomMessage({});
|
|
399
434
|
const timeState = {
|
|
400
435
|
numSuccess: 0,
|
|
@@ -411,143 +446,143 @@ describe('SiTargetMultiplexer', () => {
|
|
|
411
446
|
timeState.numAbort = (timeState.numAbort || 0) + 1;
|
|
412
447
|
}, () => { });
|
|
413
448
|
Promise.all([getMuxerPromise(), getMuxerPromise(), getMuxerPromise()]).then(() => {
|
|
414
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
449
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
415
450
|
timeState.allSendingFinished = true;
|
|
416
451
|
}, () => { });
|
|
417
452
|
setTimeout(() => {
|
|
418
|
-
siDevice.setState(SiDeviceState.Closing);
|
|
453
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Closing);
|
|
419
454
|
timeState.deviceClosed = true;
|
|
420
455
|
}, 1);
|
|
421
456
|
yield testUtils.advanceTimersByTime(0);
|
|
422
|
-
expect(timeState).toEqual({
|
|
457
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
423
458
|
numSuccess: 1,
|
|
424
459
|
numAbort: 0,
|
|
425
460
|
deviceClosed: false,
|
|
426
461
|
allSendingFinished: false
|
|
427
462
|
});
|
|
428
463
|
yield testUtils.advanceTimersByTime(1);
|
|
429
|
-
expect(timeState).toEqual({
|
|
464
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
430
465
|
numSuccess: 1,
|
|
431
466
|
numAbort: 2,
|
|
432
467
|
deviceClosed: true,
|
|
433
468
|
allSendingFinished: false
|
|
434
469
|
});
|
|
435
470
|
yield testUtils.advanceTimersByTime(0); // for Promise.all (not called)
|
|
436
|
-
expect(timeState).toEqual({
|
|
471
|
+
(0, globals_1.expect)(timeState).toEqual({
|
|
437
472
|
numSuccess: 1,
|
|
438
473
|
numAbort: 2,
|
|
439
474
|
deviceClosed: true,
|
|
440
475
|
allSendingFinished: false
|
|
441
476
|
});
|
|
442
477
|
}));
|
|
443
|
-
test('handles device failing to send', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
444
|
-
const siDevice = new SiDevice('handlesDeviceFailingToSend', {
|
|
478
|
+
(0, globals_1.test)('handles device failing to send', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
479
|
+
const siDevice = new SiDevice_1.SiDevice('handlesDeviceFailingToSend', {
|
|
445
480
|
driver: mockDriver({
|
|
446
481
|
send: () => Promise.reject(new Error('test'))
|
|
447
482
|
})
|
|
448
483
|
});
|
|
449
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
450
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
451
|
-
expect(muxer instanceof SiTargetMultiplexer).toBe(true);
|
|
484
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
485
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
486
|
+
(0, globals_1.expect)(muxer instanceof SiTargetMultiplexer_1.SiTargetMultiplexer).toBe(true);
|
|
452
487
|
const randomMessage = testUtils.getRandomMessage({});
|
|
453
488
|
const timeState = { timedOut: false };
|
|
454
489
|
muxer.sendMessageToLatestTarget(randomMessage, 1, 1).catch(() => {
|
|
455
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
490
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
456
491
|
timeState.timedOut = true;
|
|
457
492
|
});
|
|
458
493
|
yield testUtils.advanceTimersByTime(0);
|
|
459
|
-
expect(timeState).toEqual({ timedOut: false });
|
|
494
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: false });
|
|
460
495
|
yield testUtils.advanceTimersByTime(1);
|
|
461
|
-
expect(timeState).toEqual({ timedOut: true });
|
|
496
|
+
(0, globals_1.expect)(timeState).toEqual({ timedOut: true });
|
|
462
497
|
}));
|
|
463
|
-
test('cannot send to unknown target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
464
|
-
const siDevice = new SiDevice('undefinedTarget', { driver: mockDriver({}) });
|
|
465
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
466
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
467
|
-
muxer.latestTarget = SiTargetMultiplexerTarget.Direct;
|
|
498
|
+
(0, globals_1.test)('cannot send to unknown target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
499
|
+
const siDevice = new SiDevice_1.SiDevice('undefinedTarget', { driver: mockDriver({}) });
|
|
500
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
501
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
502
|
+
muxer.latestTarget = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct;
|
|
468
503
|
const randomMessage = testUtils.getRandomMessage({});
|
|
469
504
|
const timeState = { setToUnknownFailed: false };
|
|
470
|
-
muxer.sendMessage(SiTargetMultiplexerTarget.Unknown, randomMessage, 1, 1).catch(() => {
|
|
471
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
505
|
+
muxer.sendMessage(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Unknown, randomMessage, 1, 1).catch(() => {
|
|
506
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
472
507
|
timeState.setToUnknownFailed = true;
|
|
473
508
|
});
|
|
474
509
|
yield testUtils.advanceTimersByTime(0);
|
|
475
|
-
expect(timeState).toEqual({ setToUnknownFailed: true });
|
|
510
|
+
(0, globals_1.expect)(timeState).toEqual({ setToUnknownFailed: true });
|
|
476
511
|
}));
|
|
477
|
-
test('cannot send to switching target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
478
|
-
const siDevice = new SiDevice('switchingTarget', { driver: mockDriver({}) });
|
|
479
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
480
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
481
|
-
muxer.latestTarget = SiTargetMultiplexerTarget.Direct;
|
|
512
|
+
(0, globals_1.test)('cannot send to switching target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
513
|
+
const siDevice = new SiDevice_1.SiDevice('switchingTarget', { driver: mockDriver({}) });
|
|
514
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
515
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
516
|
+
muxer.latestTarget = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct;
|
|
482
517
|
const randomMessage = testUtils.getRandomMessage({});
|
|
483
518
|
const timeState = { setToSwitchingFailed: false };
|
|
484
|
-
muxer.sendMessage(SiTargetMultiplexerTarget.Switching, randomMessage, 1, 1).catch(() => {
|
|
485
|
-
expect(muxer._test.sendQueue.length).toBe(0);
|
|
519
|
+
muxer.sendMessage(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Switching, randomMessage, 1, 1).catch(() => {
|
|
520
|
+
(0, globals_1.expect)(muxer._test.sendQueue.length).toBe(0);
|
|
486
521
|
timeState.setToSwitchingFailed = true;
|
|
487
522
|
});
|
|
488
523
|
yield testUtils.advanceTimersByTime(0);
|
|
489
|
-
expect(timeState).toEqual({ setToSwitchingFailed: true });
|
|
524
|
+
(0, globals_1.expect)(timeState).toEqual({ setToSwitchingFailed: true });
|
|
490
525
|
}));
|
|
491
|
-
test('handles error switching target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
492
|
-
const siDevice = new SiDevice('errorSwitchingTarget', {
|
|
526
|
+
(0, globals_1.test)('handles error switching target', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
527
|
+
const siDevice = new SiDevice_1.SiDevice('errorSwitchingTarget', {
|
|
493
528
|
driver: mockDriver({
|
|
494
529
|
send: () => Promise.reject(new Error('test'))
|
|
495
530
|
})
|
|
496
531
|
});
|
|
497
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
498
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
499
|
-
muxer.latestTarget = SiTargetMultiplexerTarget.Direct;
|
|
532
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
533
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
534
|
+
muxer.latestTarget = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct;
|
|
500
535
|
const randomMessage = testUtils.getRandomMessage({});
|
|
501
536
|
const timeState = { setTargetFailed: false };
|
|
502
|
-
muxer.sendMessage(SiTargetMultiplexerTarget.Remote, randomMessage, 1, 1).catch(() => {
|
|
537
|
+
muxer.sendMessage(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Remote, randomMessage, 1, 1).catch(() => {
|
|
503
538
|
timeState.setTargetFailed = true;
|
|
504
539
|
});
|
|
505
540
|
yield testUtils.nTimesAsync(2, () => testUtils.advanceTimersByTime(0));
|
|
506
|
-
expect(muxer.target).toEqual(SiTargetMultiplexerTarget.Unknown);
|
|
507
|
-
expect(timeState).toEqual({ setTargetFailed: true });
|
|
541
|
+
(0, globals_1.expect)(muxer.target).toEqual(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Unknown);
|
|
542
|
+
(0, globals_1.expect)(timeState).toEqual({ setTargetFailed: true });
|
|
508
543
|
}));
|
|
509
|
-
test('handles unclear target switch response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
510
|
-
const siDevice = new SiDevice('errorSwitchingTarget', {
|
|
544
|
+
(0, globals_1.test)('handles unclear target switch response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
545
|
+
const siDevice = new SiDevice_1.SiDevice('errorSwitchingTarget', {
|
|
511
546
|
driver: mockDriver({
|
|
512
547
|
send: () => {
|
|
513
548
|
setTimeout(() => {
|
|
514
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, siProtocol.render({
|
|
515
|
-
command: proto.cmd.SET_MS,
|
|
516
|
-
parameters: [SiTargetMultiplexerTarget.Direct]
|
|
549
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, siProtocol.render({
|
|
550
|
+
command: constants_1.proto.cmd.SET_MS,
|
|
551
|
+
parameters: [ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct]
|
|
517
552
|
})));
|
|
518
553
|
}, 0);
|
|
519
554
|
return Promise.resolve();
|
|
520
555
|
}
|
|
521
556
|
})
|
|
522
557
|
});
|
|
523
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
524
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
525
|
-
muxer.latestTarget = SiTargetMultiplexerTarget.Direct;
|
|
558
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
559
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
560
|
+
muxer.latestTarget = ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct;
|
|
526
561
|
const randomMessage = testUtils.getRandomMessage({});
|
|
527
562
|
const timeState = { setTargetFailed: false };
|
|
528
|
-
muxer.sendMessage(SiTargetMultiplexerTarget.Remote, randomMessage, 1, 1).catch(() => {
|
|
563
|
+
muxer.sendMessage(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Remote, randomMessage, 1, 1).catch(() => {
|
|
529
564
|
timeState.setTargetFailed = true;
|
|
530
565
|
});
|
|
531
566
|
yield testUtils.nTimesAsync(2, () => testUtils.advanceTimersByTime(0));
|
|
532
|
-
expect(muxer.target).toEqual(SiTargetMultiplexerTarget.Unknown);
|
|
533
|
-
expect(timeState).toEqual({ setTargetFailed: true });
|
|
567
|
+
(0, globals_1.expect)(muxer.target).toEqual(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Unknown);
|
|
568
|
+
(0, globals_1.expect)(timeState).toEqual({ setTargetFailed: true });
|
|
534
569
|
}));
|
|
535
|
-
test('handles direct device-initiated command', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
536
|
-
const siDevice = new SiDevice('errorSwitchingTarget', {
|
|
570
|
+
(0, globals_1.test)('handles direct device-initiated command', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
571
|
+
const siDevice = new SiDevice_1.SiDevice('errorSwitchingTarget', {
|
|
537
572
|
driver: mockDriver({
|
|
538
573
|
send: () => Promise.reject(new Error('test'))
|
|
539
574
|
})
|
|
540
575
|
});
|
|
541
|
-
siDevice.setState(SiDeviceState.Opened);
|
|
542
|
-
const muxer = SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
576
|
+
siDevice.setState(ISiDevice_1.SiDeviceState.Opened);
|
|
577
|
+
const muxer = SiTargetMultiplexer_1.SiTargetMultiplexer.fromSiDevice(siDevice);
|
|
543
578
|
const deviceInitiatedMessage = siProtocol.render({
|
|
544
|
-
command: proto.cmd.SI5_DET,
|
|
579
|
+
command: constants_1.proto.cmd.SI5_DET,
|
|
545
580
|
parameters: [0x00, 0x0a, 0x00, 0x04, 0x19, 0x02]
|
|
546
581
|
});
|
|
547
|
-
siDevice.dispatchEvent('receive', new SiDeviceReceiveEvent(siDevice, deviceInitiatedMessage));
|
|
582
|
+
siDevice.dispatchEvent('receive', new ISiDevice_1.SiDeviceReceiveEvent(siDevice, deviceInitiatedMessage));
|
|
548
583
|
yield testUtils.nTimesAsync(10, () => testUtils.advanceTimersByTime(1));
|
|
549
|
-
expect(muxer.target).toEqual(SiTargetMultiplexerTarget.Direct);
|
|
550
|
-
expect(muxer.latestTarget).toEqual(SiTargetMultiplexerTarget.Direct);
|
|
584
|
+
(0, globals_1.expect)(muxer.target).toEqual(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct);
|
|
585
|
+
(0, globals_1.expect)(muxer.latestTarget).toEqual(ISiTargetMultiplexer_1.SiTargetMultiplexerTarget.Direct);
|
|
551
586
|
}));
|
|
552
587
|
});
|
|
553
588
|
//# sourceMappingURL=SiTargetMultiplexer.test.js.map
|