@neurodevs/node-lsl 20.0.0 → 22.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/build/__tests__/AbstractPackageTest.d.ts +2 -1
- package/build/__tests__/AbstractPackageTest.js +9 -7
- package/build/__tests__/AbstractPackageTest.js.map +1 -1
- package/build/__tests__/impl/{BleDeviceController.test.d.ts → BleGattController.test.d.ts} +3 -3
- package/build/__tests__/impl/{BleDeviceController.test.js → BleGattController.test.js} +65 -65
- package/build/__tests__/impl/BleGattController.test.js.map +1 -0
- package/build/__tests__/impl/BleObserverController.test.d.ts +22 -0
- package/build/__tests__/impl/BleObserverController.test.js +112 -0
- package/build/__tests__/impl/BleObserverController.test.js.map +1 -0
- package/build/__tests__/impl/{LslEventMarkerEmitter.test.d.ts → LslEventMarkerOutlet.test.d.ts} +3 -3
- package/build/__tests__/impl/{LslEventMarkerEmitter.test.js → LslEventMarkerOutlet.test.js} +35 -36
- package/build/__tests__/impl/LslEventMarkerOutlet.test.js.map +1 -0
- package/build/__tests__/impl/LslJsonOutlet.test.d.ts +14 -0
- package/build/__tests__/impl/LslJsonOutlet.test.js +118 -0
- package/build/__tests__/impl/LslJsonOutlet.test.js.map +1 -0
- package/build/__tests__/impl/LslStreamInfo.test.js +0 -1
- package/build/__tests__/impl/LslStreamInfo.test.js.map +1 -1
- package/build/__tests__/impl/LslStreamInlet.test.js +0 -1
- package/build/__tests__/impl/LslStreamInlet.test.js.map +1 -1
- package/build/__tests__/impl/LslStreamOutlet.test.js +0 -1
- package/build/__tests__/impl/LslStreamOutlet.test.js.map +1 -1
- package/build/__tests__/impl/LslWebSocketBridge.test.js +0 -1
- package/build/__tests__/impl/LslWebSocketBridge.test.js.map +1 -1
- package/build/__tests__/impl/UsbDeviceController.test.js.map +1 -1
- package/build/impl/{LslEventMarkerEmitter.d.ts → LslEventMarkerOutlet.d.ts} +6 -6
- package/build/impl/{LslEventMarkerEmitter.js → LslEventMarkerOutlet.js} +2 -2
- package/build/impl/LslEventMarkerOutlet.js.map +1 -0
- package/build/impl/LslJsonOutlet.d.ts +33 -0
- package/build/impl/LslJsonOutlet.js +44 -0
- package/build/impl/LslJsonOutlet.js.map +1 -0
- package/build/impl/LslStreamOutlet.d.ts +3 -4
- package/build/impl/controllers/{BleDeviceController.d.ts → BleGattController.d.ts} +10 -10
- package/build/impl/controllers/{BleDeviceController.js → BleGattController.js} +18 -18
- package/build/impl/controllers/BleGattController.js.map +1 -0
- package/build/impl/controllers/BleObserverController.d.ts +24 -0
- package/build/impl/controllers/BleObserverController.js +49 -0
- package/build/impl/controllers/BleObserverController.js.map +1 -0
- package/build/impl/controllers/UsbDeviceController.d.ts +9 -9
- package/build/impl/controllers/UsbDeviceController.js +7 -7
- package/build/impl/controllers/UsbDeviceController.js.map +1 -1
- package/build/index.d.ts +24 -16
- package/build/index.js +29 -19
- package/build/index.js.map +1 -1
- package/build/scripts/runEventMarkerOutlet.js +12 -0
- package/build/scripts/runEventMarkerOutlet.js.map +1 -0
- package/build/scripts/runMuse.js +2 -2
- package/build/scripts/runMuse.js.map +1 -1
- package/build/testDoubles/{BleController/FakeBleController.d.ts → BleGatt/FakeBleGatt.d.ts} +6 -6
- package/build/testDoubles/{BleController/FakeBleController.js → BleGatt/FakeBleGatt.js} +8 -8
- package/build/testDoubles/BleGatt/FakeBleGatt.js.map +1 -0
- package/build/testDoubles/{BleController/SpyBleController.d.ts → BleGatt/SpyBleGatt.d.ts} +4 -4
- package/build/testDoubles/{BleController/SpyBleController.js → BleGatt/SpyBleGatt.js} +3 -3
- package/build/testDoubles/BleGatt/SpyBleGatt.js.map +1 -0
- package/build/testDoubles/BleObserver/FakeBleObserver.d.ts +10 -0
- package/build/testDoubles/BleObserver/FakeBleObserver.js +20 -0
- package/build/testDoubles/BleObserver/FakeBleObserver.js.map +1 -0
- package/build/testDoubles/{LslEmitter/FakeLslEmitter.d.ts → EventMarkerOutlet/FakeEventMarkerOutlet.d.ts} +2 -2
- package/build/testDoubles/{LslEmitter/FakeLslEmitter.js → EventMarkerOutlet/FakeEventMarkerOutlet.js} +7 -7
- package/build/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.js.map +1 -0
- package/build/testDoubles/{LslEmitter/SpyLslEmitter.d.ts → EventMarkerOutlet/SpyEventMarkerOutlet.d.ts} +3 -3
- package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js +23 -0
- package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js.map +1 -0
- package/build/testDoubles/{LslEmitter/ThrowingLslEmitter.d.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.d.ts} +2 -2
- package/build/testDoubles/{LslEmitter/ThrowingLslEmitter.js → EventMarkerOutlet/ThrowingEventMarkerOutlet.js} +2 -2
- package/build/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.js.map +1 -0
- package/build/testDoubles/JsonOutlet/FakeJsonOutlet.d.ts +10 -0
- package/build/testDoubles/JsonOutlet/FakeJsonOutlet.js +20 -0
- package/build/testDoubles/JsonOutlet/FakeJsonOutlet.js.map +1 -0
- package/build/testDoubles/UsbDevice/FakeUsbDevice.d.ts +12 -0
- package/build/testDoubles/UsbDevice/FakeUsbDevice.js +25 -0
- package/build/testDoubles/UsbDevice/FakeUsbDevice.js.map +1 -0
- package/package.json +3 -3
- package/src/__tests__/AbstractPackageTest.ts +9 -7
- package/src/__tests__/impl/{BleDeviceController.test.ts → BleGattController.test.ts} +43 -43
- package/src/__tests__/impl/BleObserverController.test.ts +158 -0
- package/src/__tests__/impl/{LslEventMarkerEmitter.test.ts → LslEventMarkerOutlet.test.ts} +20 -19
- package/src/__tests__/impl/LslJsonOutlet.test.ts +135 -0
- package/src/__tests__/impl/LslStreamInfo.test.ts +0 -1
- package/src/__tests__/impl/LslStreamInlet.test.ts +0 -1
- package/src/__tests__/impl/LslStreamOutlet.test.ts +0 -1
- package/src/__tests__/impl/LslWebSocketBridge.test.ts +0 -1
- package/src/__tests__/impl/UsbDeviceController.test.ts +2 -2
- package/src/impl/{LslEventMarkerEmitter.ts → LslEventMarkerOutlet.ts} +8 -6
- package/src/impl/LslJsonOutlet.ts +87 -0
- package/src/impl/LslStreamOutlet.ts +7 -5
- package/src/impl/controllers/{BleDeviceController.ts → BleGattController.ts} +23 -28
- package/src/impl/controllers/BleObserverController.ts +85 -0
- package/src/impl/controllers/UsbDeviceController.ts +14 -16
- package/src/index.ts +40 -24
- package/src/scripts/{runLslEmitter.ts → runEventMarkerOutlet.ts} +5 -5
- package/src/scripts/runMuse.ts +2 -2
- package/src/testDoubles/{BleController/FakeBleController.ts → BleGatt/FakeBleGatt.ts} +14 -14
- package/src/testDoubles/{BleController/SpyBleController.ts → BleGatt/SpyBleGatt.ts} +5 -5
- package/src/testDoubles/BleObserver/FakeBleObserver.ts +28 -0
- package/src/testDoubles/{LslEmitter/FakeLslEmitter.ts → EventMarkerOutlet/FakeEventMarkerOutlet.ts} +8 -8
- package/src/testDoubles/{LslEmitter/SpyLslEmitter.ts → EventMarkerOutlet/SpyEventMarkerOutlet.ts} +7 -7
- package/src/testDoubles/{LslEmitter/ThrowingLslEmitter.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.ts} +3 -3
- package/src/testDoubles/JsonOutlet/FakeJsonOutlet.ts +25 -0
- package/src/testDoubles/UsbDevice/FakeUsbDevice.ts +34 -0
- package/build/__tests__/impl/BleDeviceController.test.js.map +0 -1
- package/build/__tests__/impl/LslEventMarkerEmitter.test.js.map +0 -1
- package/build/impl/LslEventMarkerEmitter.js.map +0 -1
- package/build/impl/controllers/BleDeviceController.js.map +0 -1
- package/build/scripts/runLslEmitter.js +0 -12
- package/build/scripts/runLslEmitter.js.map +0 -1
- package/build/testDoubles/BleController/FakeBleController.js.map +0 -1
- package/build/testDoubles/BleController/SpyBleController.js.map +0 -1
- package/build/testDoubles/LslEmitter/FakeLslEmitter.js.map +0 -1
- package/build/testDoubles/LslEmitter/SpyLslEmitter.js +0 -23
- package/build/testDoubles/LslEmitter/SpyLslEmitter.js.map +0 -1
- package/build/testDoubles/LslEmitter/ThrowingLslEmitter.js.map +0 -1
- package/build/testDoubles/UsbController/FakeUsbController.d.ts +0 -12
- package/build/testDoubles/UsbController/FakeUsbController.js +0 -25
- package/build/testDoubles/UsbController/FakeUsbController.js.map +0 -1
- package/src/testDoubles/UsbController/FakeUsbController.ts +0 -34
- /package/build/scripts/{runLslEmitter.d.ts → runEventMarkerOutlet.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runMuse.js","sourceRoot":"","sources":["../../src/scripts/runMuse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,
|
|
1
|
+
{"version":3,"file":"runMuse.js","sourceRoot":"","sources":["../../src/scripts/runMuse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,iBAAiB,MAAM,0CAA0C,CAAA;AAExE,MAAM,yBAAyB,GAA2B;IACtD,OAAO,EAAE,sCAAsC;IAC/C,SAAS,EAAE,sCAAsC;IACjD,SAAS,EAAE,sCAAsC;IACjD,aAAa,EAAE,sCAAsC;IACrD,WAAW,EAAE,sCAAsC;IACnD,YAAY,EAAE,sCAAsC;IACpD,OAAO,EAAE,sCAAsC;IAC/C,OAAO,EAAE,sCAAsC;IAC/C,OAAO,EAAE,sCAAsC;IAC/C,OAAO,EAAE,sCAAsC;IAC/C,QAAQ,EAAE,sCAAsC;IAChD,OAAO,EAAE,sCAAsC;CAClD,CAAA;AAED,MAAM,YAAY,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;AAEzD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAC/D,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;IACb,OAAO;QACH,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,CAAC,IAAY,EAAE,MAAc,EAAE,YAAoB,EAAE,EAAE;YAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAa,CAAA;YAC7D,OAAO,CAAC,IAAI,CAAC,IAAI,YAAY,YAAY,MAAM,EAAE,EAAE,KAAK,CAAC,CAAA;QAC7D,CAAC;KACJ,CAAA;AACL,CAAC,CACJ,CAAA;AAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAClC,UAAU,EAAE,sCAAsC;IAClD,aAAa;IACb,cAAc,EAAE,IAAI;CACvB,CAAC,CAAA;AAEF,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;AAEpB,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACvC,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAA;IACjD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;AAC5D,CAAC;AAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;AAE7D,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default class
|
|
3
|
-
static callsToConstructor: (
|
|
1
|
+
import { BleGatt, BleGattOptions, CharacteristicCallbacks } from '../../impl/controllers/BleGattController.js';
|
|
2
|
+
export default class FakeBleGatt implements BleGatt {
|
|
3
|
+
static callsToConstructor: (BleGattOptions | undefined)[];
|
|
4
4
|
static numCallsToConnect: number;
|
|
5
5
|
static callsToWriteCharacteristic: {
|
|
6
6
|
characteristicUuid: string;
|
|
@@ -12,7 +12,7 @@ export default class FakeBleController implements BleController {
|
|
|
12
12
|
static fakeName: string;
|
|
13
13
|
private _uuid;
|
|
14
14
|
private _name;
|
|
15
|
-
constructor(options?:
|
|
15
|
+
constructor(options?: BleGattOptions);
|
|
16
16
|
connect(): Promise<void>;
|
|
17
17
|
writeCharacteristic(characteristicUuid: string, value: string): Promise<void>;
|
|
18
18
|
subscribeCharacteristics(charCallbacks: CharacteristicCallbacks): Promise<void>;
|
|
@@ -21,6 +21,6 @@ export default class FakeBleController implements BleController {
|
|
|
21
21
|
get name(): string;
|
|
22
22
|
static resetTestDouble(): void;
|
|
23
23
|
}
|
|
24
|
-
export interface
|
|
25
|
-
options:
|
|
24
|
+
export interface CallToBleGattConstructor {
|
|
25
|
+
options: BleGattOptions;
|
|
26
26
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import generateId from '@neurodevs/generate-id';
|
|
2
|
-
export default class
|
|
2
|
+
export default class FakeBleGatt {
|
|
3
3
|
static callsToConstructor = [];
|
|
4
4
|
static numCallsToConnect = 0;
|
|
5
5
|
static callsToWriteCharacteristic = [];
|
|
@@ -12,23 +12,23 @@ export default class FakeBleController {
|
|
|
12
12
|
constructor(options) {
|
|
13
13
|
const { deviceUuid } = options ?? {};
|
|
14
14
|
this._uuid = deviceUuid ?? generateId();
|
|
15
|
-
this._name =
|
|
16
|
-
|
|
15
|
+
this._name = FakeBleGatt.fakeName;
|
|
16
|
+
FakeBleGatt.callsToConstructor.push(options);
|
|
17
17
|
}
|
|
18
18
|
async connect() {
|
|
19
|
-
|
|
19
|
+
FakeBleGatt.numCallsToConnect++;
|
|
20
20
|
}
|
|
21
21
|
async writeCharacteristic(characteristicUuid, value) {
|
|
22
|
-
|
|
22
|
+
FakeBleGatt.callsToWriteCharacteristic.push({
|
|
23
23
|
characteristicUuid,
|
|
24
24
|
value,
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
async subscribeCharacteristics(charCallbacks) {
|
|
28
|
-
|
|
28
|
+
FakeBleGatt.callsToSubscribeCharacteristics.push(charCallbacks);
|
|
29
29
|
}
|
|
30
30
|
async disconnect() {
|
|
31
|
-
|
|
31
|
+
FakeBleGatt.numCallsToDisconnect++;
|
|
32
32
|
}
|
|
33
33
|
get uuid() {
|
|
34
34
|
return this._uuid;
|
|
@@ -44,4 +44,4 @@ export default class FakeBleController {
|
|
|
44
44
|
this.numCallsToDisconnect = 0;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
//# sourceMappingURL=
|
|
47
|
+
//# sourceMappingURL=FakeBleGatt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeBleGatt.js","sourceRoot":"","sources":["../../../src/testDoubles/BleGatt/FakeBleGatt.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAO/C,MAAM,CAAC,OAAO,OAAO,WAAW;IACrB,MAAM,CAAC,kBAAkB,GAAmC,EAAE,CAAA;IAE9D,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAE5B,MAAM,CAAC,0BAA0B,GAGlC,EAAE,CAAA;IAED,MAAM,CAAC,+BAA+B,GACzC,EAAE,CAAA;IAEC,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAE/B,MAAM,CAAC,mBAAmB,GAA4B,EAAE,CAAA;IACxD,MAAM,CAAC,QAAQ,GAAG,QAAQ,UAAU,EAAE,EAAE,CAAA;IAEvC,KAAK,CAAQ;IACb,KAAK,CAAQ;IAErB,YAAmB,OAAwB;QACvC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QAEpC,IAAI,CAAC,KAAK,GAAG,UAAU,IAAI,UAAU,EAAE,CAAA;QACvC,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAA;QAEjC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,WAAW,CAAC,iBAAiB,EAAE,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC5B,kBAA0B,EAC1B,KAAa;QAEb,WAAW,CAAC,0BAA0B,CAAC,IAAI,CAAC;YACxC,kBAAkB;YAClB,KAAK;SACR,CAAC,CAAA;IACN,CAAC;IAEM,KAAK,CAAC,wBAAwB,CACjC,aAAsC;QAEtC,WAAW,CAAC,+BAA+B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACnE,CAAC;IAEM,KAAK,CAAC,UAAU;QACnB,WAAW,CAAC,oBAAoB,EAAE,CAAA;IACtC,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;QAC1B,IAAI,CAAC,0BAA0B,GAAG,EAAE,CAAA;QACpC,IAAI,CAAC,+BAA+B,GAAG,EAAE,CAAA;QACzC,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAA;IACjC,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
export default class
|
|
1
|
+
import BleGattController, { BleGattOptions } from '../../impl/controllers/BleGattController.js';
|
|
2
|
+
export default class SpyBleGatt extends BleGattController {
|
|
3
3
|
infoLogs: string[];
|
|
4
4
|
warnLogs: string[];
|
|
5
5
|
errorLogs: string[];
|
|
6
|
-
constructor(options:
|
|
7
|
-
getCharacteristicCallbacks(): import("../../impl/controllers/
|
|
6
|
+
constructor(options: BleGattOptions);
|
|
7
|
+
getCharacteristicCallbacks(): import("../../impl/controllers/BleGattController.js").CharacteristicCallbacks;
|
|
8
8
|
getRssiIntervalMs(): number | undefined;
|
|
9
9
|
getConnected(): boolean;
|
|
10
10
|
setLogInfoSpy(): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
export default class
|
|
1
|
+
import BleGattController from '../../impl/controllers/BleGattController.js';
|
|
2
|
+
export default class SpyBleGatt extends BleGattController {
|
|
3
3
|
infoLogs = [];
|
|
4
4
|
warnLogs = [];
|
|
5
5
|
errorLogs = [];
|
|
@@ -45,4 +45,4 @@ export default class SpyBleController extends BleDeviceController {
|
|
|
45
45
|
this.errorLogs = [];
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=SpyBleGatt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpyBleGatt.js","sourceRoot":"","sources":["../../../src/testDoubles/BleGatt/SpyBleGatt.ts"],"names":[],"mappings":"AAAA,OAAO,iBAEN,MAAM,6CAA6C,CAAA;AAEpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,iBAAiB;IAC9C,QAAQ,GAAa,EAAE,CAAA;IACvB,QAAQ,GAAa,EAAE,CAAA;IACvB,SAAS,GAAa,EAAE,CAAA;IAE/B,YAAmB,OAAuB;QACtC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;IAEM,0BAA0B;QAC7B,OAAO,IAAI,CAAC,aAAa,CAAA;IAC7B,CAAC;IAEM,iBAAiB;QACpB,OAAO,IAAI,CAAC,cAAc,CAAA;IAC9B,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAEM,aAAa;QAChB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAElB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC3B,OAAO,OAAO,CAAA;QAClB,CAAC,CAAA;IACL,CAAC;IAEM,aAAa;QAChB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAElB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC3B,OAAO,OAAO,CAAA;QAClB,CAAC,CAAA;IACL,CAAC;IAEM,cAAc;QACjB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;QAEnB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC5B,OAAO,OAAO,CAAA;QAClB,CAAC,CAAA;IACL,CAAC;IAEM,eAAe;QAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;IACvB,CAAC;CACJ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BleObserver, BleObserverOptions } from '../../impl/controllers/BleObserverController.js';
|
|
2
|
+
export default class FakeBleObserver implements BleObserver {
|
|
3
|
+
static callsToConstructor: BleObserverOptions[];
|
|
4
|
+
static numCallsToStartObserving: number;
|
|
5
|
+
static numCallsToStopObserving: number;
|
|
6
|
+
constructor(options: BleObserverOptions);
|
|
7
|
+
startObserving(): Promise<void>;
|
|
8
|
+
stopObserving(): Promise<void>;
|
|
9
|
+
static resetTestDouble(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export default class FakeBleObserver {
|
|
2
|
+
static callsToConstructor = [];
|
|
3
|
+
static numCallsToStartObserving = 0;
|
|
4
|
+
static numCallsToStopObserving = 0;
|
|
5
|
+
constructor(options) {
|
|
6
|
+
FakeBleObserver.callsToConstructor.push(options);
|
|
7
|
+
}
|
|
8
|
+
async startObserving() {
|
|
9
|
+
FakeBleObserver.numCallsToStartObserving++;
|
|
10
|
+
}
|
|
11
|
+
async stopObserving() {
|
|
12
|
+
FakeBleObserver.numCallsToStopObserving++;
|
|
13
|
+
}
|
|
14
|
+
static resetTestDouble() {
|
|
15
|
+
FakeBleObserver.callsToConstructor = [];
|
|
16
|
+
FakeBleObserver.numCallsToStartObserving = 0;
|
|
17
|
+
FakeBleObserver.numCallsToStopObserving = 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=FakeBleObserver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeBleObserver.js","sourceRoot":"","sources":["../../../src/testDoubles/BleObserver/FakeBleObserver.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,OAAO,eAAe;IACzB,MAAM,CAAC,kBAAkB,GAAyB,EAAE,CAAA;IACpD,MAAM,CAAC,wBAAwB,GAAG,CAAC,CAAA;IACnC,MAAM,CAAC,uBAAuB,GAAG,CAAC,CAAA;IAEzC,YAAmB,OAA2B;QAC1C,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAEM,KAAK,CAAC,cAAc;QACvB,eAAe,CAAC,wBAAwB,EAAE,CAAA;IAC9C,CAAC;IAEM,KAAK,CAAC,aAAa;QACtB,eAAe,CAAC,uBAAuB,EAAE,CAAA;IAC7C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,eAAe,CAAC,kBAAkB,GAAG,EAAE,CAAA;QACvC,eAAe,CAAC,wBAAwB,GAAG,CAAC,CAAA;QAC5C,eAAe,CAAC,uBAAuB,GAAG,CAAC,CAAA;IAC/C,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default class
|
|
1
|
+
import { EventMarkerOutlet, EmitOptions, TimedEventMarker } from '../../impl/LslEventMarkerOutlet.js';
|
|
2
|
+
export default class FakeEventMarkerOutlet implements EventMarkerOutlet {
|
|
3
3
|
static numCallsToConstructor: number;
|
|
4
4
|
static callsToEmit: {
|
|
5
5
|
markerName: string;
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
export default class
|
|
1
|
+
export default class FakeEventMarkerOutlet {
|
|
2
2
|
static numCallsToConstructor = 0;
|
|
3
3
|
static callsToEmit = [];
|
|
4
4
|
static callsToEmitMany = [];
|
|
5
5
|
static numCallsToInterrupt = 0;
|
|
6
6
|
static numCallsToDestroy = 0;
|
|
7
7
|
constructor() {
|
|
8
|
-
|
|
8
|
+
FakeEventMarkerOutlet.numCallsToConstructor++;
|
|
9
9
|
}
|
|
10
10
|
async emit(markerName, options) {
|
|
11
|
-
|
|
11
|
+
FakeEventMarkerOutlet.callsToEmit.push({ markerName, options });
|
|
12
12
|
}
|
|
13
13
|
async emitMany(markers) {
|
|
14
|
-
|
|
14
|
+
FakeEventMarkerOutlet.callsToEmitMany.push(markers);
|
|
15
15
|
}
|
|
16
16
|
interrupt() {
|
|
17
|
-
|
|
17
|
+
FakeEventMarkerOutlet.numCallsToInterrupt++;
|
|
18
18
|
}
|
|
19
19
|
destroy() {
|
|
20
|
-
|
|
20
|
+
FakeEventMarkerOutlet.numCallsToDestroy++;
|
|
21
21
|
}
|
|
22
22
|
static resetTestDouble() {
|
|
23
23
|
this.numCallsToConstructor = 0;
|
|
@@ -27,4 +27,4 @@ export default class FakeLslEmitter {
|
|
|
27
27
|
this.numCallsToDestroy = 0;
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=FakeEventMarkerOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAC/B,MAAM,CAAC,qBAAqB,GAAG,CAAC,CAAA;IAEhC,MAAM,CAAC,WAAW,GAGnB,EAAE,CAAA;IAED,MAAM,CAAC,eAAe,GAAyB,EAAE,CAAA;IACjD,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAA;IAC9B,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAEnC;QACI,qBAAqB,CAAC,qBAAqB,EAAE,CAAA;IACjD,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,UAAkB,EAAE,OAAqB;QACvD,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;IACnE,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,OAA2B;QAC7C,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvD,CAAC;IAEM,SAAS;QACZ,qBAAqB,CAAC,mBAAmB,EAAE,CAAA;IAC/C,CAAC;IAEM,OAAO;QACV,qBAAqB,CAAC,iBAAiB,EAAE,CAAA;IAC7C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;QACrB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC9B,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import LslEventMarkerOutlet from '../../impl/LslEventMarkerOutlet.js';
|
|
2
2
|
import { LslOutlet } from '../../impl/LslStreamOutlet.js';
|
|
3
|
-
export default class
|
|
3
|
+
export default class SpyEventMarkerOutlet extends LslEventMarkerOutlet {
|
|
4
4
|
static shouldCallWaitOnSuper: boolean;
|
|
5
|
-
|
|
5
|
+
totalWaitAfterMs: number;
|
|
6
6
|
constructor(outlet: LslOutlet);
|
|
7
7
|
wait(waitAfterMs: number): Promise<unknown>;
|
|
8
8
|
getStreamOutlet(): LslOutlet;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import LslEventMarkerOutlet from '../../impl/LslEventMarkerOutlet.js';
|
|
2
|
+
export default class SpyEventMarkerOutlet extends LslEventMarkerOutlet {
|
|
3
|
+
static shouldCallWaitOnSuper = false;
|
|
4
|
+
totalWaitAfterMs;
|
|
5
|
+
constructor(outlet) {
|
|
6
|
+
super(outlet);
|
|
7
|
+
this.totalWaitAfterMs = 0;
|
|
8
|
+
}
|
|
9
|
+
async wait(waitAfterMs) {
|
|
10
|
+
this.totalWaitAfterMs += waitAfterMs;
|
|
11
|
+
if (SpyEventMarkerOutlet.shouldCallWaitOnSuper) {
|
|
12
|
+
return super.wait(waitAfterMs);
|
|
13
|
+
}
|
|
14
|
+
return Promise.resolve();
|
|
15
|
+
}
|
|
16
|
+
getStreamOutlet() {
|
|
17
|
+
return this.outlet;
|
|
18
|
+
}
|
|
19
|
+
resetTestDouble() {
|
|
20
|
+
this.totalWaitAfterMs = 0;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=SpyEventMarkerOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpyEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,oCAAoC,CAAA;AAGrE,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,oBAAoB;IAC3D,MAAM,CAAC,qBAAqB,GAAG,KAAK,CAAA;IAEpC,gBAAgB,CAAQ;IAE/B,YAAmB,MAAiB;QAChC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEb,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,WAAmB;QACjC,IAAI,CAAC,gBAAgB,IAAI,WAAW,CAAA;QAEpC,IAAI,oBAAoB,CAAC,qBAAqB,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAClC,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC5B,CAAC;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAEM,eAAe;QAClB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA;IAC7B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default class
|
|
1
|
+
import { EventMarkerOutlet, EmitOptions, TimedEventMarker } from '../../impl/LslEventMarkerOutlet.js';
|
|
2
|
+
export default class ThrowingEventMarkerOutlet implements EventMarkerOutlet {
|
|
3
3
|
private errorMsg;
|
|
4
4
|
constructor();
|
|
5
5
|
emit(_markerName: string, _options?: EmitOptions): Promise<void>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default class
|
|
1
|
+
export default class ThrowingEventMarkerOutlet {
|
|
2
2
|
errorMsg = 'Intentional throwing: ';
|
|
3
3
|
constructor() {
|
|
4
4
|
throw new Error(this.errorMsg + 'constructor');
|
|
@@ -16,4 +16,4 @@ export default class ThrowingLslEmitter {
|
|
|
16
16
|
throw new Error(this.errorMsg + 'destroy');
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
//# sourceMappingURL=
|
|
19
|
+
//# sourceMappingURL=ThrowingEventMarkerOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThrowingEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAO,yBAAyB;IAClC,QAAQ,GAAG,wBAAwB,CAAA;IAE3C;QACI,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,QAAsB;QACzD,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,QAA4B;QAC9C,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAA;IAC/C,CAAC;IAEM,SAAS;QACZ,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAA;IAChD,CAAC;IAEM,OAAO;QACV,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAA;IAC9C,CAAC;CACJ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Json, JsonOutlet } from '../../impl/LslJsonOutlet.js';
|
|
2
|
+
export default class FakeJsonOutlet implements JsonOutlet {
|
|
3
|
+
static numCallsToConstructor: number;
|
|
4
|
+
static callsToPushJson: Json[];
|
|
5
|
+
static numCallsToDestroy: number;
|
|
6
|
+
constructor();
|
|
7
|
+
pushJson(data: Json): void;
|
|
8
|
+
destroy(): void;
|
|
9
|
+
static resetTestDouble(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export default class FakeJsonOutlet {
|
|
2
|
+
static numCallsToConstructor = 0;
|
|
3
|
+
static callsToPushJson = [];
|
|
4
|
+
static numCallsToDestroy = 0;
|
|
5
|
+
constructor() {
|
|
6
|
+
FakeJsonOutlet.numCallsToConstructor++;
|
|
7
|
+
}
|
|
8
|
+
pushJson(data) {
|
|
9
|
+
FakeJsonOutlet.callsToPushJson.push(data);
|
|
10
|
+
}
|
|
11
|
+
destroy() {
|
|
12
|
+
FakeJsonOutlet.numCallsToDestroy++;
|
|
13
|
+
}
|
|
14
|
+
static resetTestDouble() {
|
|
15
|
+
FakeJsonOutlet.numCallsToConstructor = 0;
|
|
16
|
+
FakeJsonOutlet.callsToPushJson = [];
|
|
17
|
+
FakeJsonOutlet.numCallsToDestroy = 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=FakeJsonOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeJsonOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/JsonOutlet/FakeJsonOutlet.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,cAAc;IACxB,MAAM,CAAC,qBAAqB,GAAG,CAAC,CAAA;IAChC,MAAM,CAAC,eAAe,GAAW,EAAE,CAAA;IACnC,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAEnC;QACI,cAAc,CAAC,qBAAqB,EAAE,CAAA;IAC1C,CAAC;IAEM,QAAQ,CAAC,IAAU;QACtB,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC7C,CAAC;IAEM,OAAO;QACV,cAAc,CAAC,iBAAiB,EAAE,CAAA;IACtC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,cAAc,CAAC,qBAAqB,GAAG,CAAC,CAAA;QACxC,cAAc,CAAC,eAAe,GAAG,EAAE,CAAA;QACnC,cAAc,CAAC,iBAAiB,GAAG,CAAC,CAAA;IACxC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { UsbDevice, UsbDeviceOptions } from '../../impl/controllers/UsbDeviceController.js';
|
|
2
|
+
export default class FakeUsbDevice implements UsbDevice {
|
|
3
|
+
static callsToConstructor: (UsbDeviceOptions | undefined)[];
|
|
4
|
+
static numCallsToConnect: number;
|
|
5
|
+
static callsToWriteUsb: string[];
|
|
6
|
+
static numCallsToDisconnect: number;
|
|
7
|
+
constructor(options?: UsbDeviceOptions);
|
|
8
|
+
connect(): Promise<void>;
|
|
9
|
+
writeUsb(value: string): Promise<void>;
|
|
10
|
+
disconnect(): Promise<void>;
|
|
11
|
+
static resetTestDouble(): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export default class FakeUsbDevice {
|
|
2
|
+
static callsToConstructor = [];
|
|
3
|
+
static numCallsToConnect = 0;
|
|
4
|
+
static callsToWriteUsb = [];
|
|
5
|
+
static numCallsToDisconnect = 0;
|
|
6
|
+
constructor(options) {
|
|
7
|
+
FakeUsbDevice.callsToConstructor.push(options);
|
|
8
|
+
}
|
|
9
|
+
async connect() {
|
|
10
|
+
FakeUsbDevice.numCallsToConnect++;
|
|
11
|
+
}
|
|
12
|
+
async writeUsb(value) {
|
|
13
|
+
FakeUsbDevice.callsToWriteUsb.push(value);
|
|
14
|
+
}
|
|
15
|
+
async disconnect() {
|
|
16
|
+
FakeUsbDevice.numCallsToDisconnect++;
|
|
17
|
+
}
|
|
18
|
+
static resetTestDouble() {
|
|
19
|
+
FakeUsbDevice.callsToConstructor.length = 0;
|
|
20
|
+
FakeUsbDevice.numCallsToConnect = 0;
|
|
21
|
+
FakeUsbDevice.callsToWriteUsb.length = 0;
|
|
22
|
+
FakeUsbDevice.numCallsToDisconnect = 0;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=FakeUsbDevice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeUsbDevice.js","sourceRoot":"","sources":["../../../src/testDoubles/UsbDevice/FakeUsbDevice.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,OAAO,aAAa;IACvB,MAAM,CAAC,kBAAkB,GAAqC,EAAE,CAAA;IAChE,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC5B,MAAM,CAAC,eAAe,GAAa,EAAE,CAAA;IACrC,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAEtC,YAAmB,OAA0B;QACzC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,aAAa,CAAC,iBAAiB,EAAE,CAAA;IACrC,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC/B,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEM,KAAK,CAAC,UAAU;QACnB,aAAa,CAAC,oBAAoB,EAAE,CAAA;IACxC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,aAAa,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAA;QAC3C,aAAa,CAAC,iBAAiB,GAAG,CAAC,CAAA;QACnC,aAAa,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAA;QACxC,aAAa,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAC1C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neurodevs/node-lsl",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "22.1.0",
|
|
4
4
|
"description": "Lab Streaming Layer (LSL) bindings for Node",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -42,13 +42,13 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@neurodevs/generate-id": "^1.1.3",
|
|
45
|
-
"@neurodevs/ndx-native": "^
|
|
45
|
+
"@neurodevs/ndx-native": "^8.0.0",
|
|
46
46
|
"ffi-rs": "^1.3.1",
|
|
47
47
|
"ws": "^8.18.3"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@neurodevs/eslint-config-ndx": "^1.0.2",
|
|
51
|
-
"@neurodevs/node-tdd": "^3.0.
|
|
51
|
+
"@neurodevs/node-tdd": "^3.0.3",
|
|
52
52
|
"@neurodevs/prettier-config-ndx": "^1.0.2",
|
|
53
53
|
"@types/ws": "^8.18.1",
|
|
54
54
|
"koffi": "^3.1.2",
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from '@neurodevs/ndx-native'
|
|
11
11
|
import AbstractModuleTest from '@neurodevs/node-tdd'
|
|
12
12
|
|
|
13
|
-
import
|
|
13
|
+
import SpyEventMarkerOutlet from '../testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js'
|
|
14
14
|
import FakeLslInfo from '../testDoubles/LslInfo/FakeLslInfo.js'
|
|
15
15
|
import SpyLslInfo from '../testDoubles/LslInfo/SpyLslInfo.js'
|
|
16
16
|
import FakeLslInlet from '../testDoubles/LslInlet/FakeLslInlet.js'
|
|
@@ -20,8 +20,8 @@ import SpyLslWsBridge from '../testDoubles/LslWsBridge/SpyLslWsBridge.js'
|
|
|
20
20
|
import FakeWebSocket from '../testDoubles/WebSockets/FakeWebSocket.js'
|
|
21
21
|
import FakeWebSocketServer from '../testDoubles/WebSockets/FakeWebSocketServer.js'
|
|
22
22
|
import LslWebSocketBridge from '../impl/LslWebSocketBridge.js'
|
|
23
|
-
import
|
|
24
|
-
import
|
|
23
|
+
import BleGattController from '../impl/controllers/BleGattController.js'
|
|
24
|
+
import LslEventMarkerOutlet from '../impl/LslEventMarkerOutlet.js'
|
|
25
25
|
import LslStreamInfo from '../impl/LslStreamInfo.js'
|
|
26
26
|
import LslStreamInlet, {
|
|
27
27
|
OnDataCallback,
|
|
@@ -35,6 +35,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
35
35
|
|
|
36
36
|
protected static readonly fakeLslInfo = new FakeLslInfo()
|
|
37
37
|
|
|
38
|
+
protected static readonly deviceUuid = this.generateId()
|
|
38
39
|
protected static readonly name_ = this.generateId()
|
|
39
40
|
protected static readonly type = this.generateId()
|
|
40
41
|
protected static readonly sourceId = this.generateId()
|
|
@@ -57,6 +58,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
57
58
|
|
|
58
59
|
this.setImmediateTimeouts()
|
|
59
60
|
|
|
61
|
+
this.setFakeLiblsl()
|
|
60
62
|
this.setFakeLibndx()
|
|
61
63
|
}
|
|
62
64
|
|
|
@@ -73,7 +75,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
73
75
|
protected static setImmediateTimeouts() {
|
|
74
76
|
this.callsToSetTimeout = []
|
|
75
77
|
|
|
76
|
-
|
|
78
|
+
BleGattController.setTimeout = ((
|
|
77
79
|
callback: (...args: unknown[]) => void,
|
|
78
80
|
delayMs?: number,
|
|
79
81
|
...args: unknown[]
|
|
@@ -99,7 +101,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
99
101
|
FakeLibndx.resetTestDouble()
|
|
100
102
|
FakeLibndx.fakeResult = { status: 200 }
|
|
101
103
|
|
|
102
|
-
|
|
104
|
+
BleGattController.ndx = this.fakeLibndx
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
protected static setSpyLslInfo() {
|
|
@@ -126,8 +128,8 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
126
128
|
FakeLslOutlet.resetTestDouble()
|
|
127
129
|
}
|
|
128
130
|
|
|
129
|
-
protected static
|
|
130
|
-
|
|
131
|
+
protected static setSpyEventMarkerOutlet() {
|
|
132
|
+
LslEventMarkerOutlet.Class = SpyEventMarkerOutlet
|
|
131
133
|
}
|
|
132
134
|
|
|
133
135
|
protected static setSpyLslWsBridge() {
|