sportident.js 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +82 -35
- 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,67 +1,102 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const globals_1 = require("@jest/globals");
|
|
37
|
+
const constants_1 = require("../../constants");
|
|
38
|
+
const testUtils = __importStar(require("../../testUtils"));
|
|
39
|
+
const BaseSiCard_1 = require("../BaseSiCard");
|
|
40
|
+
const ModernSiCard_1 = require("./ModernSiCard");
|
|
41
|
+
const SiCard8_1 = require("./SiCard8");
|
|
42
|
+
const siCard8Examples_1 = require("./siCard8Examples");
|
|
43
|
+
const FakeSiCard8_1 = require("../../fakes/FakeSiCard/types/FakeSiCard8");
|
|
44
|
+
(0, globals_1.describe)('SiCard8', () => {
|
|
45
|
+
(0, globals_1.test)('is registered', () => {
|
|
46
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(1999999)).not.toEqual(SiCard8_1.SiCard8);
|
|
47
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2000000)).toEqual(SiCard8_1.SiCard8);
|
|
48
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2002999)).toEqual(SiCard8_1.SiCard8);
|
|
49
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2003000)).not.toEqual(SiCard8_1.SiCard8);
|
|
50
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2003999)).not.toEqual(SiCard8_1.SiCard8);
|
|
51
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2004000)).toEqual(SiCard8_1.SiCard8);
|
|
52
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2999999)).toEqual(SiCard8_1.SiCard8);
|
|
53
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(3000000)).not.toEqual(SiCard8_1.SiCard8);
|
|
19
54
|
});
|
|
20
|
-
describe('typeSpecificInstanceFromMessage', () => {
|
|
21
|
-
test('works for valid message', () => {
|
|
22
|
-
const instance = SiCard8.typeSpecificInstanceFromMessage({
|
|
23
|
-
command: proto.cmd.SI8_DET,
|
|
24
|
-
parameters: [0x00, 0x00, ModernSiCardSeries.SiCard8, 0x22, 0x22, 0x22]
|
|
55
|
+
(0, globals_1.describe)('typeSpecificInstanceFromMessage', () => {
|
|
56
|
+
(0, globals_1.test)('works for valid message', () => {
|
|
57
|
+
const instance = SiCard8_1.SiCard8.typeSpecificInstanceFromMessage({
|
|
58
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
59
|
+
parameters: [0x00, 0x00, ModernSiCard_1.ModernSiCardSeries.SiCard8, 0x22, 0x22, 0x22]
|
|
25
60
|
});
|
|
26
61
|
if (instance === undefined) {
|
|
27
62
|
throw new Error('expect instance');
|
|
28
63
|
}
|
|
29
|
-
expect(instance instanceof SiCard8).toBe(true);
|
|
30
|
-
expect(instance.cardNumber).toBe(2236962);
|
|
64
|
+
(0, globals_1.expect)(instance instanceof SiCard8_1.SiCard8).toBe(true);
|
|
65
|
+
(0, globals_1.expect)(instance.cardNumber).toBe(2236962);
|
|
31
66
|
});
|
|
32
|
-
test('returns undefined when message has mode', () => {
|
|
33
|
-
expect(SiCard8.typeSpecificInstanceFromMessage({
|
|
34
|
-
mode: proto.NAK
|
|
67
|
+
(0, globals_1.test)('returns undefined when message has mode', () => {
|
|
68
|
+
(0, globals_1.expect)(SiCard8_1.SiCard8.typeSpecificInstanceFromMessage({
|
|
69
|
+
mode: constants_1.proto.NAK
|
|
35
70
|
})).toBe(undefined);
|
|
36
71
|
});
|
|
37
|
-
test('returns undefined when message has wrong command', () => {
|
|
38
|
-
expect(SiCard8.typeSpecificInstanceFromMessage({
|
|
39
|
-
command: testUtils.getRandomByteExcept([proto.cmd.SI8_DET]),
|
|
72
|
+
(0, globals_1.test)('returns undefined when message has wrong command', () => {
|
|
73
|
+
(0, globals_1.expect)(SiCard8_1.SiCard8.typeSpecificInstanceFromMessage({
|
|
74
|
+
command: testUtils.getRandomByteExcept([constants_1.proto.cmd.SI8_DET]),
|
|
40
75
|
parameters: []
|
|
41
76
|
})).toBe(undefined);
|
|
42
77
|
});
|
|
43
|
-
test('returns undefined when there are too few parameters', () => {
|
|
44
|
-
expect(SiCard8.typeSpecificInstanceFromMessage({
|
|
45
|
-
command: proto.cmd.SI8_DET,
|
|
78
|
+
(0, globals_1.test)('returns undefined when there are too few parameters', () => {
|
|
79
|
+
(0, globals_1.expect)(SiCard8_1.SiCard8.typeSpecificInstanceFromMessage({
|
|
80
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
46
81
|
parameters: []
|
|
47
82
|
})).toBe(undefined);
|
|
48
83
|
});
|
|
49
|
-
test('returns undefined when the series does not match', () => {
|
|
50
|
-
expect(SiCard8.typeSpecificInstanceFromMessage({
|
|
51
|
-
command: proto.cmd.SI8_DET,
|
|
52
|
-
parameters: [0x00, 0x00, testUtils.getRandomByteExcept([ModernSiCardSeries.SiCard8]), 0x22, 0x22, 0x22]
|
|
84
|
+
(0, globals_1.test)('returns undefined when the series does not match', () => {
|
|
85
|
+
(0, globals_1.expect)(SiCard8_1.SiCard8.typeSpecificInstanceFromMessage({
|
|
86
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
87
|
+
parameters: [0x00, 0x00, testUtils.getRandomByteExcept([ModernSiCard_1.ModernSiCardSeries.SiCard8]), 0x22, 0x22, 0x22]
|
|
53
88
|
})).toBe(undefined);
|
|
54
89
|
});
|
|
55
90
|
});
|
|
56
|
-
test('getPunchOffset', () => {
|
|
57
|
-
expect(getPunchOffset(0)).toEqual(0x88);
|
|
58
|
-
expect(getPunchOffset(1)).toEqual(0x8c);
|
|
59
|
-
expect(getPunchOffset(29)).toEqual(0xfc);
|
|
91
|
+
(0, globals_1.test)('getPunchOffset', () => {
|
|
92
|
+
(0, globals_1.expect)((0, SiCard8_1.getPunchOffset)(0)).toEqual(0x88);
|
|
93
|
+
(0, globals_1.expect)((0, SiCard8_1.getPunchOffset)(1)).toEqual(0x8c);
|
|
94
|
+
(0, globals_1.expect)((0, SiCard8_1.getPunchOffset)(29)).toEqual(0xfc);
|
|
60
95
|
});
|
|
61
|
-
const examples = getSiCard8Examples();
|
|
96
|
+
const examples = (0, siCard8Examples_1.getSiCard8Examples)();
|
|
62
97
|
Object.keys(examples).forEach((exampleName) => {
|
|
63
98
|
const { storageData, cardData } = examples[exampleName];
|
|
64
|
-
const myFakeSiCard8 = new FakeSiCard8(storageData);
|
|
99
|
+
const myFakeSiCard8 = new FakeSiCard8_1.FakeSiCard8(storageData);
|
|
65
100
|
const mainStationSimulation = {
|
|
66
101
|
sendMessage: (message, numResponses) => {
|
|
67
102
|
const responses = myFakeSiCard8.handleRequest(message);
|
|
@@ -71,43 +106,43 @@ describe('SiCard8', () => {
|
|
|
71
106
|
return Promise.resolve(responses.map((response) => (response.mode === undefined ? [0x00, 0x00, ...response.parameters] : [])));
|
|
72
107
|
}
|
|
73
108
|
};
|
|
74
|
-
test(`typeSpecificRead works with ${exampleName} example`, (done) => {
|
|
75
|
-
const mySiCard8 = new SiCard8(cardData.cardNumber);
|
|
109
|
+
(0, globals_1.test)(`typeSpecificRead works with ${exampleName} example`, (done) => {
|
|
110
|
+
const mySiCard8 = new SiCard8_1.SiCard8(cardData.cardNumber);
|
|
76
111
|
mySiCard8.mainStation = mainStationSimulation;
|
|
77
112
|
mySiCard8.typeSpecificRead().then(() => {
|
|
78
|
-
expect(mySiCard8.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
79
|
-
expect(mySiCard8.raceResult.startTime).toEqual(cardData.startTime);
|
|
80
|
-
expect(mySiCard8.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
81
|
-
expect(mySiCard8.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
82
|
-
expect(mySiCard8.raceResult.punches).toEqual(cardData.punches);
|
|
83
|
-
expect(mySiCard8.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
84
|
-
expect(mySiCard8.punchCount).toEqual(cardData.punchCount);
|
|
85
|
-
expect(mySiCard8.uid).toEqual(cardData.uid);
|
|
113
|
+
(0, globals_1.expect)(mySiCard8.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
114
|
+
(0, globals_1.expect)(mySiCard8.raceResult.startTime).toEqual(cardData.startTime);
|
|
115
|
+
(0, globals_1.expect)(mySiCard8.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
116
|
+
(0, globals_1.expect)(mySiCard8.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
117
|
+
(0, globals_1.expect)(mySiCard8.raceResult.punches).toEqual(cardData.punches);
|
|
118
|
+
(0, globals_1.expect)(mySiCard8.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
119
|
+
(0, globals_1.expect)(mySiCard8.punchCount).toEqual(cardData.punchCount);
|
|
120
|
+
(0, globals_1.expect)(mySiCard8.uid).toEqual(cardData.uid);
|
|
86
121
|
const cardSeriesString = mySiCard8.storage.get('cardSeries').toString();
|
|
87
|
-
expect(cardSeriesString in ModernSiCardSeries).toBe(true);
|
|
122
|
+
(0, globals_1.expect)(cardSeriesString in ModernSiCard_1.ModernSiCardSeries).toBe(true);
|
|
88
123
|
done();
|
|
89
124
|
});
|
|
90
125
|
});
|
|
91
|
-
test(`typeSpecificRead works with wrong card number in ${exampleName} example`, (done) => {
|
|
92
|
-
const mySiCard8 = new SiCard8(cardData.cardNumber + 1);
|
|
126
|
+
(0, globals_1.test)(`typeSpecificRead works with wrong card number in ${exampleName} example`, (done) => {
|
|
127
|
+
const mySiCard8 = new SiCard8_1.SiCard8(cardData.cardNumber + 1);
|
|
93
128
|
mySiCard8.mainStation = mainStationSimulation;
|
|
94
129
|
mySiCard8.typeSpecificRead().then(() => {
|
|
95
|
-
expect(mySiCard8.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
96
|
-
expect(mySiCard8.raceResult.startTime).toEqual(cardData.startTime);
|
|
97
|
-
expect(mySiCard8.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
98
|
-
expect(mySiCard8.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
99
|
-
expect(mySiCard8.raceResult.punches).toEqual(cardData.punches);
|
|
100
|
-
expect(mySiCard8.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
101
|
-
expect(mySiCard8.punchCount).toEqual(cardData.punchCount);
|
|
102
|
-
expect(mySiCard8.uid).toEqual(cardData.uid);
|
|
130
|
+
(0, globals_1.expect)(mySiCard8.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
131
|
+
(0, globals_1.expect)(mySiCard8.raceResult.startTime).toEqual(cardData.startTime);
|
|
132
|
+
(0, globals_1.expect)(mySiCard8.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
133
|
+
(0, globals_1.expect)(mySiCard8.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
134
|
+
(0, globals_1.expect)(mySiCard8.raceResult.punches).toEqual(cardData.punches);
|
|
135
|
+
(0, globals_1.expect)(mySiCard8.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
136
|
+
(0, globals_1.expect)(mySiCard8.punchCount).toEqual(cardData.punchCount);
|
|
137
|
+
(0, globals_1.expect)(mySiCard8.uid).toEqual(cardData.uid);
|
|
103
138
|
done();
|
|
104
139
|
});
|
|
105
140
|
});
|
|
106
141
|
});
|
|
107
|
-
test('typeSpecificRead if typeSpecificGetPage fails', (done) => {
|
|
142
|
+
(0, globals_1.test)('typeSpecificRead if typeSpecificGetPage fails', (done) => {
|
|
108
143
|
const testError = new Error('test');
|
|
109
144
|
let attemptedToGetPage = false;
|
|
110
|
-
class ModernSiCardWithoutCardHolder extends SiCard8 {
|
|
145
|
+
class ModernSiCardWithoutCardHolder extends SiCard8_1.SiCard8 {
|
|
111
146
|
typeSpecificGetPage() {
|
|
112
147
|
attemptedToGetPage = true;
|
|
113
148
|
return Promise.reject(testError);
|
|
@@ -115,8 +150,8 @@ describe('SiCard8', () => {
|
|
|
115
150
|
}
|
|
116
151
|
const myModernSiCard = new ModernSiCardWithoutCardHolder(7123456);
|
|
117
152
|
myModernSiCard.typeSpecificRead().catch((err) => {
|
|
118
|
-
expect(attemptedToGetPage).toBe(true);
|
|
119
|
-
expect(err).toBe(testError);
|
|
153
|
+
(0, globals_1.expect)(attemptedToGetPage).toBe(true);
|
|
154
|
+
(0, globals_1.expect)(err).toBe(testError);
|
|
120
155
|
done();
|
|
121
156
|
});
|
|
122
157
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiCard8.test.js","sourceRoot":"","sources":["../../../src/SiCard/types/SiCard8.test.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"SiCard8.test.js","sourceRoot":"","sources":["../../../src/SiCard/types/SiCard8.test.ts"],"names":[],"mappings":"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"}
|
package/SiCard/types/SiCard9.js
CHANGED
|
@@ -1,13 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.SiCard9 = exports.siCard9StorageDefinition = exports.siCard9StorageLocations = exports.getPunchOffset = void 0;
|
|
37
|
+
const storage = __importStar(require("../../storage"));
|
|
38
|
+
const siProtocol = __importStar(require("../../siProtocol"));
|
|
39
|
+
const ModernSiCard_1 = require("./ModernSiCard");
|
|
40
|
+
const BaseSiCard_1 = require("../BaseSiCard");
|
|
5
41
|
class ReadFinishedException {
|
|
6
42
|
}
|
|
7
43
|
const punchesPerPage = 32;
|
|
8
44
|
const bytesPerPage = 128;
|
|
9
45
|
const MAX_NUM_PUNCHES = 50;
|
|
10
|
-
|
|
46
|
+
const getPunchOffset = (i) => 0x38 + i * 4;
|
|
47
|
+
exports.getPunchOffset = getPunchOffset;
|
|
11
48
|
const parseCardHolderString = (semicolonSeparatedString) => {
|
|
12
49
|
const informationComponents = semicolonSeparatedString.split(';');
|
|
13
50
|
return {
|
|
@@ -17,12 +54,12 @@ const parseCardHolderString = (semicolonSeparatedString) => {
|
|
|
17
54
|
};
|
|
18
55
|
};
|
|
19
56
|
const parseCardHolder = (maybeCharCodes) => {
|
|
20
|
-
const semicolonSeparatedString = getCroppedString(maybeCharCodes);
|
|
57
|
+
const semicolonSeparatedString = (0, ModernSiCard_1.getCroppedString)(maybeCharCodes);
|
|
21
58
|
return parseCardHolderString(semicolonSeparatedString || '');
|
|
22
59
|
};
|
|
23
|
-
|
|
60
|
+
exports.siCard9StorageLocations = {
|
|
24
61
|
uid: new storage.SiInt([[0x03], [0x02], [0x01], [0x00]]),
|
|
25
|
-
cardSeries: new storage.SiEnum([[0x18]], ModernSiCardSeries),
|
|
62
|
+
cardSeries: new storage.SiEnum([[0x18]], ModernSiCard_1.ModernSiCardSeries),
|
|
26
63
|
cardNumber: new storage.SiModified(new storage.SiArray(3, (i) => new storage.SiInt([[0x19 + (2 - i)]])), (extractedValue) => siProtocol.arr2cardNumber(extractedValue)
|
|
27
64
|
// (cardNumber) => siProtocol.cardNumber2arr(cardNumber),
|
|
28
65
|
// (cardNumber) => `${cardNumber}`,
|
|
@@ -34,13 +71,13 @@ export const siCard9StorageLocations = {
|
|
|
34
71
|
checkTime: new siProtocol.SiTime([[0x0b], [0x0a], [0x08]]),
|
|
35
72
|
punchCount: new storage.SiInt([[0x16]]),
|
|
36
73
|
punches: new storage.SiModified(new storage.SiArray(MAX_NUM_PUNCHES, (i) => new storage.SiDict({
|
|
37
|
-
code: new storage.SiInt([[getPunchOffset(i) + 1]]),
|
|
38
|
-
time: new siProtocol.SiTime([[getPunchOffset(i) + 3], [getPunchOffset(i) + 2], [getPunchOffset(i) + 0]])
|
|
39
|
-
})), (allPunches) => cropPunches(allPunches)),
|
|
74
|
+
code: new storage.SiInt([[(0, exports.getPunchOffset)(i) + 1]]),
|
|
75
|
+
time: new siProtocol.SiTime([[(0, exports.getPunchOffset)(i) + 3], [(0, exports.getPunchOffset)(i) + 2], [(0, exports.getPunchOffset)(i) + 0]])
|
|
76
|
+
})), (allPunches) => (0, ModernSiCard_1.cropPunches)(allPunches)),
|
|
40
77
|
cardHolder: new storage.SiModified(new storage.SiArray(0x18, (i) => new storage.SiInt([[0x20 + i]])), (charCodes) => parseCardHolder(charCodes))
|
|
41
78
|
};
|
|
42
|
-
|
|
43
|
-
|
|
79
|
+
exports.siCard9StorageDefinition = storage.defineStorage(0x100, exports.siCard9StorageLocations);
|
|
80
|
+
class SiCard9 extends ModernSiCard_1.ModernSiCard {
|
|
44
81
|
static typeSpecificInstanceFromMessage(message) {
|
|
45
82
|
const info = this.parseModernSiCardDetectionMessage(message);
|
|
46
83
|
if (info === undefined) {
|
|
@@ -53,7 +90,7 @@ export class SiCard9 extends ModernSiCard {
|
|
|
53
90
|
}
|
|
54
91
|
constructor(cardNumber) {
|
|
55
92
|
super(cardNumber);
|
|
56
|
-
this.storage = siCard9StorageDefinition();
|
|
93
|
+
this.storage = (0, exports.siCard9StorageDefinition)();
|
|
57
94
|
}
|
|
58
95
|
typeSpecificRead() {
|
|
59
96
|
return new Promise((resolve, reject) => {
|
|
@@ -96,6 +133,7 @@ export class SiCard9 extends ModernSiCard {
|
|
|
96
133
|
});
|
|
97
134
|
}
|
|
98
135
|
}
|
|
136
|
+
exports.SiCard9 = SiCard9;
|
|
99
137
|
SiCard9.maxNumPunches = MAX_NUM_PUNCHES;
|
|
100
|
-
BaseSiCard.registerNumberRange(1000000, 2000000, SiCard9);
|
|
138
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(1000000, 2000000, SiCard9);
|
|
101
139
|
//# sourceMappingURL=SiCard9.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiCard9.js","sourceRoot":"","sources":["../../../src/SiCard/types/SiCard9.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"SiCard9.js","sourceRoot":"","sources":["../../../src/SiCard/types/SiCard9.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,63 +1,98 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
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
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const globals_1 = require("@jest/globals");
|
|
37
|
+
const constants_1 = require("../../constants");
|
|
38
|
+
const testUtils = __importStar(require("../../testUtils"));
|
|
39
|
+
const BaseSiCard_1 = require("../BaseSiCard");
|
|
40
|
+
const ModernSiCard_1 = require("./ModernSiCard");
|
|
41
|
+
const SiCard9_1 = require("./SiCard9");
|
|
42
|
+
const siCard9Examples_1 = require("./siCard9Examples");
|
|
43
|
+
const FakeSiCard9_1 = require("../../fakes/FakeSiCard/types/FakeSiCard9");
|
|
44
|
+
(0, globals_1.describe)('SiCard9', () => {
|
|
45
|
+
(0, globals_1.test)('is registered', () => {
|
|
46
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(999999)).not.toEqual(SiCard9_1.SiCard9);
|
|
47
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(1000000)).toEqual(SiCard9_1.SiCard9);
|
|
48
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(1999999)).toEqual(SiCard9_1.SiCard9);
|
|
49
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2000000)).not.toEqual(SiCard9_1.SiCard9);
|
|
15
50
|
});
|
|
16
|
-
describe('typeSpecificInstanceFromMessage', () => {
|
|
17
|
-
test('works for valid message', () => {
|
|
18
|
-
const instance = SiCard9.typeSpecificInstanceFromMessage({
|
|
19
|
-
command: proto.cmd.SI8_DET,
|
|
20
|
-
parameters: [0x00, 0x00, ModernSiCardSeries.SiCard9, 0x11, 0x11, 0x11]
|
|
51
|
+
(0, globals_1.describe)('typeSpecificInstanceFromMessage', () => {
|
|
52
|
+
(0, globals_1.test)('works for valid message', () => {
|
|
53
|
+
const instance = SiCard9_1.SiCard9.typeSpecificInstanceFromMessage({
|
|
54
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
55
|
+
parameters: [0x00, 0x00, ModernSiCard_1.ModernSiCardSeries.SiCard9, 0x11, 0x11, 0x11]
|
|
21
56
|
});
|
|
22
57
|
if (instance === undefined) {
|
|
23
58
|
throw new Error('expect instance');
|
|
24
59
|
}
|
|
25
|
-
expect(instance instanceof SiCard9).toBe(true);
|
|
26
|
-
expect(instance.cardNumber).toBe(1118481);
|
|
60
|
+
(0, globals_1.expect)(instance instanceof SiCard9_1.SiCard9).toBe(true);
|
|
61
|
+
(0, globals_1.expect)(instance.cardNumber).toBe(1118481);
|
|
27
62
|
});
|
|
28
|
-
test('returns undefined when message has mode', () => {
|
|
29
|
-
expect(SiCard9.typeSpecificInstanceFromMessage({
|
|
30
|
-
mode: proto.NAK
|
|
63
|
+
(0, globals_1.test)('returns undefined when message has mode', () => {
|
|
64
|
+
(0, globals_1.expect)(SiCard9_1.SiCard9.typeSpecificInstanceFromMessage({
|
|
65
|
+
mode: constants_1.proto.NAK
|
|
31
66
|
})).toBe(undefined);
|
|
32
67
|
});
|
|
33
|
-
test('returns undefined when message has wrong command', () => {
|
|
34
|
-
expect(SiCard9.typeSpecificInstanceFromMessage({
|
|
35
|
-
command: testUtils.getRandomByteExcept([proto.cmd.SI8_DET]),
|
|
68
|
+
(0, globals_1.test)('returns undefined when message has wrong command', () => {
|
|
69
|
+
(0, globals_1.expect)(SiCard9_1.SiCard9.typeSpecificInstanceFromMessage({
|
|
70
|
+
command: testUtils.getRandomByteExcept([constants_1.proto.cmd.SI8_DET]),
|
|
36
71
|
parameters: []
|
|
37
72
|
})).toBe(undefined);
|
|
38
73
|
});
|
|
39
|
-
test('returns undefined when there are too few parameters', () => {
|
|
40
|
-
expect(SiCard9.typeSpecificInstanceFromMessage({
|
|
41
|
-
command: proto.cmd.SI8_DET,
|
|
74
|
+
(0, globals_1.test)('returns undefined when there are too few parameters', () => {
|
|
75
|
+
(0, globals_1.expect)(SiCard9_1.SiCard9.typeSpecificInstanceFromMessage({
|
|
76
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
42
77
|
parameters: []
|
|
43
78
|
})).toBe(undefined);
|
|
44
79
|
});
|
|
45
|
-
test('returns undefined when the series does not match', () => {
|
|
46
|
-
expect(SiCard9.typeSpecificInstanceFromMessage({
|
|
47
|
-
command: proto.cmd.SI8_DET,
|
|
48
|
-
parameters: [0x00, 0x00, testUtils.getRandomByteExcept([ModernSiCardSeries.SiCard9]), 0x22, 0x22, 0x22]
|
|
80
|
+
(0, globals_1.test)('returns undefined when the series does not match', () => {
|
|
81
|
+
(0, globals_1.expect)(SiCard9_1.SiCard9.typeSpecificInstanceFromMessage({
|
|
82
|
+
command: constants_1.proto.cmd.SI8_DET,
|
|
83
|
+
parameters: [0x00, 0x00, testUtils.getRandomByteExcept([ModernSiCard_1.ModernSiCardSeries.SiCard9]), 0x22, 0x22, 0x22]
|
|
49
84
|
})).toBe(undefined);
|
|
50
85
|
});
|
|
51
86
|
});
|
|
52
|
-
test('getPunchOffset', () => {
|
|
53
|
-
expect(getPunchOffset(0)).toEqual(0x38);
|
|
54
|
-
expect(getPunchOffset(1)).toEqual(0x3c);
|
|
55
|
-
expect(getPunchOffset(49)).toEqual(0xfc);
|
|
87
|
+
(0, globals_1.test)('getPunchOffset', () => {
|
|
88
|
+
(0, globals_1.expect)((0, SiCard9_1.getPunchOffset)(0)).toEqual(0x38);
|
|
89
|
+
(0, globals_1.expect)((0, SiCard9_1.getPunchOffset)(1)).toEqual(0x3c);
|
|
90
|
+
(0, globals_1.expect)((0, SiCard9_1.getPunchOffset)(49)).toEqual(0xfc);
|
|
56
91
|
});
|
|
57
|
-
const examples = getSiCard9Examples();
|
|
92
|
+
const examples = (0, siCard9Examples_1.getSiCard9Examples)();
|
|
58
93
|
Object.keys(examples).forEach((exampleName) => {
|
|
59
94
|
const { storageData, cardData } = examples[exampleName];
|
|
60
|
-
const myFakeSiCard9 = new FakeSiCard9(storageData);
|
|
95
|
+
const myFakeSiCard9 = new FakeSiCard9_1.FakeSiCard9(storageData);
|
|
61
96
|
const mainStationSimulation = {
|
|
62
97
|
sendMessage: (message, numResponses) => {
|
|
63
98
|
const responses = myFakeSiCard9.handleRequest(message);
|
|
@@ -67,43 +102,43 @@ describe('SiCard9', () => {
|
|
|
67
102
|
return Promise.resolve(responses.map((response) => (response.mode === undefined ? [0x00, 0x00, ...response.parameters] : [])));
|
|
68
103
|
}
|
|
69
104
|
};
|
|
70
|
-
test(`typeSpecificRead works with ${exampleName} example`, (done) => {
|
|
71
|
-
const mySiCard9 = new SiCard9(cardData.cardNumber);
|
|
105
|
+
(0, globals_1.test)(`typeSpecificRead works with ${exampleName} example`, (done) => {
|
|
106
|
+
const mySiCard9 = new SiCard9_1.SiCard9(cardData.cardNumber);
|
|
72
107
|
mySiCard9.mainStation = mainStationSimulation;
|
|
73
108
|
mySiCard9.typeSpecificRead().then(() => {
|
|
74
|
-
expect(mySiCard9.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
75
|
-
expect(mySiCard9.raceResult.startTime).toEqual(cardData.startTime);
|
|
76
|
-
expect(mySiCard9.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
77
|
-
expect(mySiCard9.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
78
|
-
expect(mySiCard9.raceResult.punches).toEqual(cardData.punches);
|
|
79
|
-
expect(mySiCard9.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
80
|
-
expect(mySiCard9.punchCount).toEqual(cardData.punchCount);
|
|
81
|
-
expect(mySiCard9.uid).toEqual(cardData.uid);
|
|
109
|
+
(0, globals_1.expect)(mySiCard9.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
110
|
+
(0, globals_1.expect)(mySiCard9.raceResult.startTime).toEqual(cardData.startTime);
|
|
111
|
+
(0, globals_1.expect)(mySiCard9.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
112
|
+
(0, globals_1.expect)(mySiCard9.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
113
|
+
(0, globals_1.expect)(mySiCard9.raceResult.punches).toEqual(cardData.punches);
|
|
114
|
+
(0, globals_1.expect)(mySiCard9.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
115
|
+
(0, globals_1.expect)(mySiCard9.punchCount).toEqual(cardData.punchCount);
|
|
116
|
+
(0, globals_1.expect)(mySiCard9.uid).toEqual(cardData.uid);
|
|
82
117
|
const cardSeriesString = mySiCard9.storage.get('cardSeries').toString();
|
|
83
|
-
expect(cardSeriesString in ModernSiCardSeries).toBe(true);
|
|
118
|
+
(0, globals_1.expect)(cardSeriesString in ModernSiCard_1.ModernSiCardSeries).toBe(true);
|
|
84
119
|
done();
|
|
85
120
|
});
|
|
86
121
|
});
|
|
87
|
-
test(`typeSpecificRead works with wrong card number in ${exampleName} example`, (done) => {
|
|
88
|
-
const mySiCard9 = new SiCard9(cardData.cardNumber + 1);
|
|
122
|
+
(0, globals_1.test)(`typeSpecificRead works with wrong card number in ${exampleName} example`, (done) => {
|
|
123
|
+
const mySiCard9 = new SiCard9_1.SiCard9(cardData.cardNumber + 1);
|
|
89
124
|
mySiCard9.mainStation = mainStationSimulation;
|
|
90
125
|
mySiCard9.typeSpecificRead().then(() => {
|
|
91
|
-
expect(mySiCard9.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
92
|
-
expect(mySiCard9.raceResult.startTime).toEqual(cardData.startTime);
|
|
93
|
-
expect(mySiCard9.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
94
|
-
expect(mySiCard9.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
95
|
-
expect(mySiCard9.raceResult.punches).toEqual(cardData.punches);
|
|
96
|
-
expect(mySiCard9.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
97
|
-
expect(mySiCard9.punchCount).toEqual(cardData.punchCount);
|
|
98
|
-
expect(mySiCard9.uid).toEqual(cardData.uid);
|
|
126
|
+
(0, globals_1.expect)(mySiCard9.raceResult.cardNumber).toEqual(cardData.cardNumber);
|
|
127
|
+
(0, globals_1.expect)(mySiCard9.raceResult.startTime).toEqual(cardData.startTime);
|
|
128
|
+
(0, globals_1.expect)(mySiCard9.raceResult.finishTime).toEqual(cardData.finishTime);
|
|
129
|
+
(0, globals_1.expect)(mySiCard9.raceResult.checkTime).toEqual(cardData.checkTime);
|
|
130
|
+
(0, globals_1.expect)(mySiCard9.raceResult.punches).toEqual(cardData.punches);
|
|
131
|
+
(0, globals_1.expect)(mySiCard9.raceResult.cardHolder).toEqual(cardData.cardHolder);
|
|
132
|
+
(0, globals_1.expect)(mySiCard9.punchCount).toEqual(cardData.punchCount);
|
|
133
|
+
(0, globals_1.expect)(mySiCard9.uid).toEqual(cardData.uid);
|
|
99
134
|
done();
|
|
100
135
|
});
|
|
101
136
|
});
|
|
102
137
|
});
|
|
103
|
-
test('typeSpecificRead if typeSpecificGetPage fails', (done) => {
|
|
138
|
+
(0, globals_1.test)('typeSpecificRead if typeSpecificGetPage fails', (done) => {
|
|
104
139
|
const testError = new Error('test');
|
|
105
140
|
let attemptedToGetPage = false;
|
|
106
|
-
class ModernSiCardWithoutCardHolder extends SiCard9 {
|
|
141
|
+
class ModernSiCardWithoutCardHolder extends SiCard9_1.SiCard9 {
|
|
107
142
|
typeSpecificGetPage() {
|
|
108
143
|
attemptedToGetPage = true;
|
|
109
144
|
return Promise.reject(testError);
|
|
@@ -111,8 +146,8 @@ describe('SiCard9', () => {
|
|
|
111
146
|
}
|
|
112
147
|
const myModernSiCard = new ModernSiCardWithoutCardHolder(7123456);
|
|
113
148
|
myModernSiCard.typeSpecificRead().catch((err) => {
|
|
114
|
-
expect(attemptedToGetPage).toBe(true);
|
|
115
|
-
expect(err).toBe(testError);
|
|
149
|
+
(0, globals_1.expect)(attemptedToGetPage).toBe(true);
|
|
150
|
+
(0, globals_1.expect)(err).toBe(testError);
|
|
116
151
|
done();
|
|
117
152
|
});
|
|
118
153
|
});
|