@neurodevs/node-lsl 19.0.0 → 22.0.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 +12 -11
- package/build/__tests__/AbstractPackageTest.js +32 -34
- 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} +68 -70
- package/build/__tests__/impl/BleGattController.test.js.map +1 -0
- package/build/__tests__/impl/BleObserverController.test.d.ts +12 -0
- package/build/__tests__/impl/BleObserverController.test.js +62 -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} +45 -46
- 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 +2 -3
- package/build/__tests__/impl/LslStreamInfo.test.js.map +1 -1
- package/build/__tests__/impl/LslStreamInlet.test.d.ts +3 -5
- package/build/__tests__/impl/LslStreamInlet.test.js +13 -47
- package/build/__tests__/impl/LslStreamInlet.test.js.map +1 -1
- package/build/__tests__/impl/LslStreamOutlet.test.js +7 -13
- package/build/__tests__/impl/LslStreamOutlet.test.js.map +1 -1
- package/build/__tests__/impl/LslWebSocketBridge.test.js +9 -11
- package/build/__tests__/impl/LslWebSocketBridge.test.js.map +1 -1
- package/build/__tests__/impl/UsbDeviceController.test.js.map +1 -1
- package/build/__tests__/impl/WindowedClockRegressor.test.js +1 -1
- package/build/__tests__/impl/WindowedClockRegressor.test.js.map +1 -1
- package/build/assertions.js +1 -1
- package/build/assertions.js.map +1 -1
- package/build/impl/LslEventMarkerOutlet.d.ts +35 -0
- 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/LslStreamInfo.d.ts +7 -7
- package/build/impl/LslStreamInfo.js.map +1 -1
- package/build/impl/LslStreamInlet.d.ts +63 -21
- package/build/impl/LslStreamInlet.js +221 -65
- package/build/impl/LslStreamInlet.js.map +1 -1
- package/build/impl/LslStreamOutlet.d.ts +16 -16
- package/build/impl/LslStreamOutlet.js +32 -36
- package/build/impl/LslStreamOutlet.js.map +1 -1
- package/build/impl/LslWebSocketBridge.d.ts +10 -10
- package/build/impl/LslWebSocketBridge.js.map +1 -1
- package/build/impl/clocks/WindowedClockRegressor.js.map +1 -0
- package/build/impl/controllers/{BleDeviceController.d.ts → BleGattController.d.ts} +10 -10
- package/build/impl/controllers/{BleDeviceController.js → BleGattController.js} +19 -19
- package/build/impl/controllers/BleGattController.js.map +1 -0
- package/build/impl/controllers/BleObserverController.d.ts +20 -0
- package/build/impl/controllers/BleObserverController.js +37 -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 +43 -31
- package/build/index.js +52 -39
- package/build/index.js.map +1 -1
- package/build/scripts/{runLslEventMarkerEmitter.js → runEventMarkerOutlet.js} +4 -3
- package/build/scripts/runEventMarkerOutlet.js.map +1 -0
- package/build/scripts/{runLslStreamOutlet.js → runLslOutlet.js} +1 -1
- package/build/scripts/runLslOutlet.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/ClockRegressor/FakeClockRegressor.d.ts +1 -1
- package/build/testDoubles/{EventMarkerEmitter/FakeEventMarkerEmitter.d.ts → EventMarkerOutlet/FakeEventMarkerOutlet.d.ts} +4 -4
- package/build/testDoubles/{EventMarkerEmitter/FakeEventMarkerEmitter.js → EventMarkerOutlet/FakeEventMarkerOutlet.js} +7 -7
- package/build/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.js.map +1 -0
- package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.d.ts +10 -0
- package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js +23 -0
- package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js.map +1 -0
- package/build/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.d.ts +9 -0
- package/build/testDoubles/{EventMarkerEmitter/ThrowingEventMarkerEmitter.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/{StreamInfo/FakeStreamInfo.d.ts → LslInfo/FakeLslInfo.d.ts} +4 -4
- package/build/testDoubles/{StreamInfo/FakeStreamInfo.js → LslInfo/FakeLslInfo.js} +7 -7
- package/build/testDoubles/LslInfo/FakeLslInfo.js.map +1 -0
- package/build/testDoubles/LslInfo/SpyLslInfo.d.ts +10 -0
- package/build/testDoubles/{StreamInfo/SpyStreamInfo.js → LslInfo/SpyLslInfo.js} +4 -4
- package/build/testDoubles/LslInfo/SpyLslInfo.js.map +1 -0
- package/build/testDoubles/{StreamInlet/FakeStreamInlet.d.ts → LslInlet/FakeLslInlet.d.ts} +4 -4
- package/build/testDoubles/{StreamInlet/FakeStreamInlet.js → LslInlet/FakeLslInlet.js} +12 -11
- package/build/testDoubles/LslInlet/FakeLslInlet.js.map +1 -0
- package/build/testDoubles/LslInlet/SpyLslInlet.d.ts +4 -0
- package/build/testDoubles/{StreamInlet/SpyStreamInlet.js → LslInlet/SpyLslInlet.js} +2 -2
- package/build/testDoubles/LslInlet/SpyLslInlet.js.map +1 -0
- package/build/testDoubles/{StreamOutlet/FakeStreamOutlet.d.ts → LslOutlet/FakeLslOutlet.d.ts} +5 -5
- package/build/testDoubles/{StreamOutlet/FakeStreamOutlet.js → LslOutlet/FakeLslOutlet.js} +8 -8
- package/build/testDoubles/LslOutlet/FakeLslOutlet.js.map +1 -0
- package/build/testDoubles/LslWsBridge/FakeLslWsBridge.d.ts +14 -0
- package/build/testDoubles/{WebSocketBridge/FakeWebSocketBridge.js → LslWsBridge/FakeLslWsBridge.js} +14 -14
- package/build/testDoubles/LslWsBridge/FakeLslWsBridge.js.map +1 -0
- package/build/testDoubles/LslWsBridge/SpyLslWsBridge.d.ts +4 -0
- package/build/testDoubles/{WebSocketBridge/SpyLslWebSocketBridge.js → LslWsBridge/SpyLslWsBridge.js} +2 -2
- package/build/testDoubles/LslWsBridge/SpyLslWsBridge.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/build/testDoubles/consts.d.ts +2 -12
- package/build/testDoubles/consts.js +0 -20
- package/build/testDoubles/consts.js.map +1 -1
- package/build/testDoubles/generateRandomOutletOptions.d.ts +2 -2
- package/build/testDoubles/generateRandomOutletOptions.js.map +1 -1
- package/package.json +5 -4
- package/src/__tests__/AbstractPackageTest.ts +35 -42
- package/src/__tests__/impl/{BleDeviceController.test.ts → BleGattController.test.ts} +45 -47
- package/src/__tests__/impl/BleObserverController.test.ts +72 -0
- package/src/__tests__/impl/{LslEventMarkerEmitter.test.ts → LslEventMarkerOutlet.test.ts} +33 -37
- package/src/__tests__/impl/LslJsonOutlet.test.ts +135 -0
- package/src/__tests__/impl/LslStreamInfo.test.ts +8 -9
- package/src/__tests__/impl/LslStreamInlet.test.ts +21 -79
- package/src/__tests__/impl/LslStreamOutlet.test.ts +17 -25
- package/src/__tests__/impl/LslWebSocketBridge.test.ts +15 -19
- package/src/__tests__/impl/UsbDeviceController.test.ts +2 -2
- package/src/__tests__/impl/WindowedClockRegressor.test.ts +1 -1
- package/src/assertions.ts +1 -2
- package/src/impl/{LslEventMarkerEmitter.ts → LslEventMarkerOutlet.ts} +17 -17
- package/src/impl/LslJsonOutlet.ts +87 -0
- package/src/impl/LslStreamInfo.ts +7 -9
- package/src/impl/LslStreamInlet.ts +305 -81
- package/src/impl/LslStreamOutlet.ts +62 -59
- package/src/impl/LslWebSocketBridge.ts +15 -18
- package/src/impl/controllers/{BleDeviceController.ts → BleGattController.ts} +23 -28
- package/src/impl/controllers/BleObserverController.ts +62 -0
- package/src/impl/controllers/UsbDeviceController.ts +14 -16
- package/src/index.ts +64 -44
- package/src/scripts/{runLslEventMarkerEmitter.ts → runEventMarkerOutlet.ts} +3 -2
- 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/ClockRegressor/FakeClockRegressor.ts +1 -1
- package/src/testDoubles/{EventMarkerEmitter/FakeEventMarkerEmitter.ts → EventMarkerOutlet/FakeEventMarkerOutlet.ts} +11 -11
- package/src/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.ts +31 -0
- package/src/testDoubles/{EventMarkerEmitter/ThrowingEventMarkerEmitter.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.ts} +5 -5
- package/src/testDoubles/JsonOutlet/FakeJsonOutlet.ts +25 -0
- package/src/testDoubles/{StreamInfo/FakeStreamInfo.ts → LslInfo/FakeLslInfo.ts} +9 -9
- package/src/testDoubles/{StreamInfo/SpyStreamInfo.ts → LslInfo/SpyLslInfo.ts} +5 -5
- package/src/testDoubles/{StreamInlet/FakeStreamInlet.ts → LslInlet/FakeLslInlet.ts} +15 -14
- package/src/testDoubles/LslInlet/SpyLslInlet.ts +10 -0
- package/src/testDoubles/{StreamOutlet/FakeStreamOutlet.ts → LslOutlet/FakeLslOutlet.ts} +11 -14
- package/src/testDoubles/{WebSocketBridge/FakeWebSocketBridge.ts → LslWsBridge/FakeLslWsBridge.ts} +19 -19
- package/src/testDoubles/LslWsBridge/SpyLslWsBridge.ts +9 -0
- package/src/testDoubles/UsbDevice/FakeUsbDevice.ts +34 -0
- package/src/testDoubles/consts.ts +3 -23
- package/src/testDoubles/generateRandomOutletOptions.ts +2 -2
- package/build/__tests__/impl/BleDeviceController.test.js.map +0 -1
- package/build/__tests__/impl/LslEventMarkerEmitter.test.js.map +0 -1
- package/build/consts.d.ts +0 -11
- package/build/consts.js +0 -21
- package/build/consts.js.map +0 -1
- package/build/impl/LslEventMarkerEmitter.d.ts +0 -35
- package/build/impl/LslEventMarkerEmitter.js.map +0 -1
- package/build/impl/WindowedClockRegressor.js.map +0 -1
- package/build/impl/controllers/BleDeviceController.js.map +0 -1
- package/build/impl/workers/inlet/LslStreamInlet.worker.d.ts +0 -22
- package/build/impl/workers/inlet/LslStreamInlet.worker.js +0 -42
- package/build/impl/workers/inlet/LslStreamInlet.worker.js.map +0 -1
- package/build/impl/workers/inlet/StreamInletWorker.d.ts +0 -73
- package/build/impl/workers/inlet/StreamInletWorker.js +0 -253
- package/build/impl/workers/inlet/StreamInletWorker.js.map +0 -1
- package/build/impl/workers/outlet/LslStreamOutlet.worker.d.ts +0 -32
- package/build/impl/workers/outlet/LslStreamOutlet.worker.js +0 -82
- package/build/impl/workers/outlet/LslStreamOutlet.worker.js.map +0 -1
- package/build/scripts/discoverMuse.js +0 -40
- package/build/scripts/discoverMuse.js.map +0 -1
- package/build/scripts/runLslEventMarkerEmitter.js.map +0 -1
- package/build/scripts/runLslStreamOutlet.d.ts +0 -1
- package/build/scripts/runLslStreamOutlet.js.map +0 -1
- package/build/scripts/testDestroyOutlet.d.ts +0 -1
- package/build/scripts/testDestroyOutlet.js +0 -4
- package/build/scripts/testDestroyOutlet.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/EventMarkerEmitter/FakeEventMarkerEmitter.js.map +0 -1
- package/build/testDoubles/EventMarkerEmitter/SpyEventMarkerEmitter.d.ts +0 -10
- package/build/testDoubles/EventMarkerEmitter/SpyEventMarkerEmitter.js +0 -23
- package/build/testDoubles/EventMarkerEmitter/SpyEventMarkerEmitter.js.map +0 -1
- package/build/testDoubles/EventMarkerEmitter/ThrowingEventMarkerEmitter.d.ts +0 -9
- package/build/testDoubles/EventMarkerEmitter/ThrowingEventMarkerEmitter.js.map +0 -1
- package/build/testDoubles/StreamInfo/FakeStreamInfo.js.map +0 -1
- package/build/testDoubles/StreamInfo/SpyStreamInfo.d.ts +0 -10
- package/build/testDoubles/StreamInfo/SpyStreamInfo.js.map +0 -1
- package/build/testDoubles/StreamInlet/FakeStreamInlet.js.map +0 -1
- package/build/testDoubles/StreamInlet/SpyStreamInlet.d.ts +0 -4
- package/build/testDoubles/StreamInlet/SpyStreamInlet.js.map +0 -1
- package/build/testDoubles/StreamOutlet/FakeStreamOutlet.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/build/testDoubles/WebSocketBridge/FakeWebSocketBridge.d.ts +0 -14
- package/build/testDoubles/WebSocketBridge/FakeWebSocketBridge.js.map +0 -1
- package/build/testDoubles/WebSocketBridge/SpyLslWebSocketBridge.d.ts +0 -4
- package/build/testDoubles/WebSocketBridge/SpyLslWebSocketBridge.js.map +0 -1
- package/build/testDoubles/WorkerThreads/FakeWorker.d.ts +0 -27
- package/build/testDoubles/WorkerThreads/FakeWorker.js +0 -67
- package/build/testDoubles/WorkerThreads/FakeWorker.js.map +0 -1
- package/src/consts.ts +0 -21
- package/src/impl/workers/inlet/LslStreamInlet.worker.ts +0 -74
- package/src/impl/workers/inlet/StreamInletWorker.ts +0 -348
- package/src/impl/workers/outlet/LslStreamOutlet.worker.ts +0 -144
- package/src/scripts/discoverMuse.ts +0 -50
- package/src/scripts/testDestroyOutlet.ts +0 -5
- package/src/testDoubles/EventMarkerEmitter/SpyEventMarkerEmitter.ts +0 -31
- package/src/testDoubles/StreamInlet/SpyStreamInlet.ts +0 -10
- package/src/testDoubles/UsbController/FakeUsbController.ts +0 -34
- package/src/testDoubles/WebSocketBridge/SpyLslWebSocketBridge.ts +0 -9
- package/src/testDoubles/WorkerThreads/FakeWorker.ts +0 -99
- /package/build/impl/{WindowedClockRegressor.d.ts → clocks/WindowedClockRegressor.d.ts} +0 -0
- /package/build/impl/{WindowedClockRegressor.js → clocks/WindowedClockRegressor.js} +0 -0
- /package/build/scripts/{discoverMuse.d.ts → runEventMarkerOutlet.d.ts} +0 -0
- /package/build/scripts/{runLslEventMarkerEmitter.d.ts → runLslOutlet.d.ts} +0 -0
- /package/src/impl/{WindowedClockRegressor.ts → clocks/WindowedClockRegressor.ts} +0 -0
- /package/src/scripts/{runLslStreamOutlet.ts → runLslOutlet.ts} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { OnDataCallback,
|
|
2
|
-
export default class
|
|
1
|
+
import { OnDataCallback, LslInlet, LslInletOptions } from '../../impl/LslStreamInlet.js';
|
|
2
|
+
export default class FakeLslInlet implements LslInlet {
|
|
3
3
|
static callsToConstructor: {
|
|
4
|
-
options?:
|
|
4
|
+
options?: LslInletOptions;
|
|
5
5
|
onData?: OnDataCallback;
|
|
6
6
|
}[];
|
|
7
7
|
static numCallsToStartPulling: number;
|
|
@@ -10,7 +10,7 @@ export default class FakeStreamInlet implements StreamInlet {
|
|
|
10
10
|
static numCallsToDestroy: number;
|
|
11
11
|
isRunning: boolean;
|
|
12
12
|
protected onData: OnDataCallback;
|
|
13
|
-
constructor(options?:
|
|
13
|
+
constructor(options?: LslInletOptions, onData?: OnDataCallback);
|
|
14
14
|
startPulling(): Promise<void>;
|
|
15
15
|
stopPulling(): void;
|
|
16
16
|
flushInlet(): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default class
|
|
1
|
+
export default class FakeLslInlet {
|
|
2
2
|
static callsToConstructor = [];
|
|
3
3
|
static numCallsToStartPulling = 0;
|
|
4
4
|
static numCallsToStopPulling = 0;
|
|
@@ -8,30 +8,31 @@ export default class FakeStreamInlet {
|
|
|
8
8
|
onData;
|
|
9
9
|
constructor(options, onData) {
|
|
10
10
|
this.onData = onData ?? (() => { });
|
|
11
|
-
|
|
11
|
+
FakeLslInlet.callsToConstructor.push({
|
|
12
12
|
options,
|
|
13
13
|
onData: this.onData,
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
async startPulling() {
|
|
17
|
-
|
|
17
|
+
FakeLslInlet.numCallsToStartPulling++;
|
|
18
18
|
this.isRunning = true;
|
|
19
19
|
}
|
|
20
20
|
stopPulling() {
|
|
21
|
-
|
|
21
|
+
FakeLslInlet.numCallsToStopPulling++;
|
|
22
22
|
this.isRunning = false;
|
|
23
23
|
}
|
|
24
24
|
flushInlet() {
|
|
25
|
-
|
|
25
|
+
FakeLslInlet.numCallsToFlushInlet++;
|
|
26
26
|
}
|
|
27
27
|
destroy() {
|
|
28
|
-
|
|
28
|
+
FakeLslInlet.numCallsToDestroy++;
|
|
29
29
|
}
|
|
30
30
|
static resetTestDouble() {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
this.callsToConstructor = [];
|
|
32
|
+
this.numCallsToStartPulling = 0;
|
|
33
|
+
this.numCallsToStopPulling = 0;
|
|
34
|
+
this.numCallsToFlushInlet = 0;
|
|
35
|
+
this.numCallsToDestroy = 0;
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
|
-
//# sourceMappingURL=
|
|
38
|
+
//# sourceMappingURL=FakeLslInlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeLslInlet.js","sourceRoot":"","sources":["../../../src/testDoubles/LslInlet/FakeLslInlet.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAO,YAAY;IACtB,MAAM,CAAC,kBAAkB,GAG1B,EAAE,CAAA;IAED,MAAM,CAAC,sBAAsB,GAAG,CAAC,CAAA;IACjC,MAAM,CAAC,qBAAqB,GAAG,CAAC,CAAA;IAChC,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAC/B,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAE5B,SAAS,GAAG,KAAK,CAAA;IAEd,MAAM,CAAiB;IAEjC,YAAmB,OAAyB,EAAE,MAAuB;QACjE,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAElC,YAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC;YACjC,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAA;IACN,CAAC;IAEM,KAAK,CAAC,YAAY;QACrB,YAAY,CAAC,sBAAsB,EAAE,CAAA;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACzB,CAAC;IAEM,WAAW;QACd,YAAY,CAAC,qBAAqB,EAAE,CAAA;QACpC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;IAEM,UAAU;QACb,YAAY,CAAC,oBAAoB,EAAE,CAAA;IACvC,CAAC;IAEM,OAAO;QACV,YAAY,CAAC,iBAAiB,EAAE,CAAA;IACpC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAA;QAC/B,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAA;QAC7B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC9B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import LslStreamInlet from '../../impl/LslStreamInlet.js';
|
|
2
|
-
export class
|
|
2
|
+
export default class SpyLslInlet extends LslStreamInlet {
|
|
3
3
|
constructor(options, onData) {
|
|
4
4
|
super(options, onData);
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=
|
|
7
|
+
//# sourceMappingURL=SpyLslInlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpyLslInlet.js","sourceRoot":"","sources":["../../../src/testDoubles/LslInlet/SpyLslInlet.ts"],"names":[],"mappings":"AAAA,OAAO,cAGN,MAAM,8BAA8B,CAAA;AAErC,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IACnD,YAAmB,OAAwB,EAAE,MAAsB;QAC/D,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1B,CAAC;CACJ"}
|
package/build/testDoubles/{StreamOutlet/FakeStreamOutlet.d.ts → LslOutlet/FakeLslOutlet.d.ts}
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { LslSample } from '@neurodevs/ndx-native';
|
|
2
|
-
import {
|
|
3
|
-
export default class
|
|
4
|
-
static callsToConstructor: (
|
|
2
|
+
import { LslOutlet, LslOutletOptions } from '../../impl/LslStreamOutlet.js';
|
|
3
|
+
export default class FakeLslOutlet implements LslOutlet {
|
|
4
|
+
static callsToConstructor: (LslOutletOptions | undefined)[];
|
|
5
5
|
static callsToPushSample: {
|
|
6
6
|
sample: LslSample;
|
|
7
7
|
timestampSec?: number;
|
|
8
8
|
}[];
|
|
9
9
|
static numCallsToDestroy: number;
|
|
10
|
-
options?:
|
|
11
|
-
constructor(options?:
|
|
10
|
+
options?: LslOutletOptions;
|
|
11
|
+
constructor(options?: LslOutletOptions);
|
|
12
12
|
destroy(): void;
|
|
13
13
|
pushSample(sample: LslSample, timestampSec?: number): void;
|
|
14
14
|
get name(): string;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { randomInt } from 'node:crypto';
|
|
2
2
|
import generateId from '@neurodevs/generate-id';
|
|
3
|
-
export default class
|
|
3
|
+
export default class FakeLslOutlet {
|
|
4
4
|
static callsToConstructor = [];
|
|
5
5
|
static callsToPushSample = [];
|
|
6
6
|
static numCallsToDestroy = 0;
|
|
7
7
|
options;
|
|
8
8
|
constructor(options) {
|
|
9
|
-
|
|
9
|
+
FakeLslOutlet.callsToConstructor.push(options);
|
|
10
10
|
this.options = options;
|
|
11
11
|
}
|
|
12
12
|
destroy() {
|
|
13
|
-
|
|
13
|
+
FakeLslOutlet.numCallsToDestroy++;
|
|
14
14
|
}
|
|
15
15
|
pushSample(sample, timestampSec) {
|
|
16
|
-
|
|
16
|
+
FakeLslOutlet.callsToPushSample.push({
|
|
17
17
|
sample,
|
|
18
18
|
timestampSec,
|
|
19
19
|
});
|
|
@@ -52,9 +52,9 @@ export default class FakeStreamOutlet {
|
|
|
52
52
|
return this.options?.units ?? generateId();
|
|
53
53
|
}
|
|
54
54
|
static resetTestDouble() {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
FakeLslOutlet.callsToConstructor = [];
|
|
56
|
+
FakeLslOutlet.callsToPushSample = [];
|
|
57
|
+
FakeLslOutlet.numCallsToDestroy = 0;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
//# sourceMappingURL=
|
|
60
|
+
//# sourceMappingURL=FakeLslOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeLslOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/LslOutlet/FakeLslOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAK/C,MAAM,CAAC,OAAO,OAAO,aAAa;IACvB,MAAM,CAAC,kBAAkB,GAAqC,EAAE,CAAA;IAEhE,MAAM,CAAC,iBAAiB,GAGzB,EAAE,CAAA;IAED,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAE5B,OAAO,CAAmB;IAEjC,YAAmB,OAA0B;QACzC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAEM,OAAO;QACV,aAAa,CAAC,iBAAiB,EAAE,CAAA;IACrC,CAAC;IAEM,UAAU,CAAC,MAAiB,EAAE,YAAqB;QACtD,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC;YACjC,MAAM;YACN,YAAY;SACf,CAAC,CAAA;IACN,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,CAAA;IAC7C,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,CAAA;IAC7C,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,CAAA;IACjD,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAA;IACnC,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,SAAS,CAAA;IACnD,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3D,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,UAAU,EAAE,CAAA;IACrD,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,CAAA;IAC9C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,aAAa,CAAC,kBAAkB,GAAG,EAAE,CAAA;QACrC,aAAa,CAAC,iBAAiB,GAAG,EAAE,CAAA;QACpC,aAAa,CAAC,iBAAiB,GAAG,CAAC,CAAA;IACvC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { LslWsBridge, LslWsBridgeConstructorOptions } from '../../impl/LslWebSocketBridge.js';
|
|
2
|
+
export default class FakeLslWsBridge implements LslWsBridge {
|
|
3
|
+
static callsToConstructor: (LslWsBridgeConstructorOptions | undefined)[];
|
|
4
|
+
static numCallsToActivate: number;
|
|
5
|
+
static numCallsToDeactivate: number;
|
|
6
|
+
static numCallsToDestroy: number;
|
|
7
|
+
constructor(options?: LslWsBridgeConstructorOptions);
|
|
8
|
+
activate(): Promise<void>;
|
|
9
|
+
deactivate(): void;
|
|
10
|
+
destroy(): void;
|
|
11
|
+
private static setFakeWebSocket;
|
|
12
|
+
private static setFakeWebSocketServer;
|
|
13
|
+
static resetTestDouble(): void;
|
|
14
|
+
}
|
package/build/testDoubles/{WebSocketBridge/FakeWebSocketBridge.js → LslWsBridge/FakeLslWsBridge.js}
RENAMED
|
@@ -1,30 +1,22 @@
|
|
|
1
1
|
import LslWebSocketBridge from '../../impl/LslWebSocketBridge.js';
|
|
2
2
|
import FakeWebSocket from '../WebSockets/FakeWebSocket.js';
|
|
3
3
|
import FakeWebSocketServer from '../WebSockets/FakeWebSocketServer.js';
|
|
4
|
-
export default class
|
|
4
|
+
export default class FakeLslWsBridge {
|
|
5
5
|
static callsToConstructor = [];
|
|
6
6
|
static numCallsToActivate = 0;
|
|
7
7
|
static numCallsToDeactivate = 0;
|
|
8
8
|
static numCallsToDestroy = 0;
|
|
9
9
|
constructor(options) {
|
|
10
|
-
|
|
10
|
+
FakeLslWsBridge.callsToConstructor.push(options);
|
|
11
11
|
}
|
|
12
12
|
async activate() {
|
|
13
|
-
|
|
13
|
+
FakeLslWsBridge.numCallsToActivate++;
|
|
14
14
|
}
|
|
15
15
|
deactivate() {
|
|
16
|
-
|
|
16
|
+
FakeLslWsBridge.numCallsToDeactivate++;
|
|
17
17
|
}
|
|
18
18
|
destroy() {
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
static resetTestDouble() {
|
|
22
|
-
this.callsToConstructor = [];
|
|
23
|
-
this.numCallsToActivate = 0;
|
|
24
|
-
this.numCallsToDeactivate = 0;
|
|
25
|
-
this.numCallsToDestroy = 0;
|
|
26
|
-
this.setFakeWebSocket();
|
|
27
|
-
this.setFakeWebSocketServer();
|
|
19
|
+
FakeLslWsBridge.numCallsToDestroy++;
|
|
28
20
|
}
|
|
29
21
|
static setFakeWebSocket() {
|
|
30
22
|
LslWebSocketBridge.WS = FakeWebSocket;
|
|
@@ -35,5 +27,13 @@ export default class FakeWebSocketBridge {
|
|
|
35
27
|
FakeWebSocketServer;
|
|
36
28
|
FakeWebSocketServer.resetTestDouble();
|
|
37
29
|
}
|
|
30
|
+
static resetTestDouble() {
|
|
31
|
+
this.callsToConstructor = [];
|
|
32
|
+
this.numCallsToActivate = 0;
|
|
33
|
+
this.numCallsToDeactivate = 0;
|
|
34
|
+
this.numCallsToDestroy = 0;
|
|
35
|
+
this.setFakeWebSocket();
|
|
36
|
+
this.setFakeWebSocketServer();
|
|
37
|
+
}
|
|
38
38
|
}
|
|
39
|
-
//# sourceMappingURL=
|
|
39
|
+
//# sourceMappingURL=FakeLslWsBridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FakeLslWsBridge.js","sourceRoot":"","sources":["../../../src/testDoubles/LslWsBridge/FakeLslWsBridge.ts"],"names":[],"mappings":"AACA,OAAO,kBAGN,MAAM,kCAAkC,CAAA;AACzC,OAAO,aAAa,MAAM,gCAAgC,CAAA;AAC1D,OAAO,mBAAmB,MAAM,sCAAsC,CAAA;AAEtE,MAAM,CAAC,OAAO,OAAO,eAAe;IACzB,MAAM,CAAC,kBAAkB,GAE1B,EAAE,CAAA;IAED,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAA;IAC7B,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAC/B,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAEnC,YAAmB,OAAuC;QACtD,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAEM,KAAK,CAAC,QAAQ;QACjB,eAAe,CAAC,kBAAkB,EAAE,CAAA;IACxC,CAAC;IAEM,UAAU;QACb,eAAe,CAAC,oBAAoB,EAAE,CAAA;IAC1C,CAAC;IAEM,OAAO;QACV,eAAe,CAAC,iBAAiB,EAAE,CAAA;IACvC,CAAC;IAEO,MAAM,CAAC,gBAAgB;QAC3B,kBAAkB,CAAC,EAAE,GAAG,aAA4C,CAAA;QACpE,aAAa,CAAC,eAAe,EAAE,CAAA;IACnC,CAAC;IAEO,MAAM,CAAC,sBAAsB;QACjC,kBAAkB,CAAC,GAAG;YAClB,mBAAwD,CAAA;QAC5D,mBAAmB,CAAC,eAAe,EAAE,CAAA;IACzC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAA;QAC7B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;QAE1B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,sBAAsB,EAAE,CAAA;IACjC,CAAC"}
|
package/build/testDoubles/{WebSocketBridge/SpyLslWebSocketBridge.js → LslWsBridge/SpyLslWsBridge.js}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import LslWebSocketBridge from '../../impl/LslWebSocketBridge.js';
|
|
2
|
-
export default class
|
|
2
|
+
export default class SpyLslWsBridge extends LslWebSocketBridge {
|
|
3
3
|
constructor(options) {
|
|
4
4
|
super(options);
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=
|
|
7
|
+
//# sourceMappingURL=SpyLslWsBridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpyLslWsBridge.js","sourceRoot":"","sources":["../../../src/testDoubles/LslWsBridge/SpyLslWsBridge.ts"],"names":[],"mappings":"AAAA,OAAO,kBAEN,MAAM,kCAAkC,CAAA;AAEzC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,kBAAkB;IAC1D,YAAmB,OAAsC;QACrD,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;CACJ"}
|
|
@@ -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"}
|
|
@@ -1,14 +1,4 @@
|
|
|
1
|
+
import { ChannelFormat } from '@neurodevs/ndx-native';
|
|
1
2
|
export declare const TEST_SUPPORTED_CHANNEL_FORMATS: readonly ["float32", "string"];
|
|
2
3
|
export declare const TEST_UNSUPPORTED_CHANNEL_FORMATS: readonly ["undefined", "double64", "int32", "int16", "int8", "int64"];
|
|
3
|
-
export
|
|
4
|
-
export declare const TEST_CHANNEL_FORMATS_MAP: {
|
|
5
|
-
undefined: number;
|
|
6
|
-
float32: number;
|
|
7
|
-
double64: number;
|
|
8
|
-
string: number;
|
|
9
|
-
int32: number;
|
|
10
|
-
int16: number;
|
|
11
|
-
int8: number;
|
|
12
|
-
int64: number;
|
|
13
|
-
};
|
|
14
|
-
export type TestChannelFormat = (typeof TEST_CHANNEL_FORMATS)[number];
|
|
4
|
+
export type TestChannelFormat = ChannelFormat;
|
|
@@ -7,24 +7,4 @@ export const TEST_UNSUPPORTED_CHANNEL_FORMATS = [
|
|
|
7
7
|
'int8',
|
|
8
8
|
'int64',
|
|
9
9
|
];
|
|
10
|
-
export const TEST_CHANNEL_FORMATS = [
|
|
11
|
-
'undefined',
|
|
12
|
-
'float32',
|
|
13
|
-
'double64',
|
|
14
|
-
'string',
|
|
15
|
-
'int32',
|
|
16
|
-
'int16',
|
|
17
|
-
'int8',
|
|
18
|
-
'int64',
|
|
19
|
-
];
|
|
20
|
-
export const TEST_CHANNEL_FORMATS_MAP = {
|
|
21
|
-
undefined: 0,
|
|
22
|
-
float32: 1,
|
|
23
|
-
double64: 2,
|
|
24
|
-
string: 3,
|
|
25
|
-
int32: 4,
|
|
26
|
-
int16: 5,
|
|
27
|
-
int8: 6,
|
|
28
|
-
int64: 7,
|
|
29
|
-
};
|
|
30
10
|
//# sourceMappingURL=consts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/testDoubles/consts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/testDoubles/consts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAU,CAAA;AAE5E,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC5C,WAAW;IACX,UAAU;IACV,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;CACD,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default function generateRandomOutletOptions():
|
|
1
|
+
import { LslOutletOptions } from '../impl/LslStreamOutlet.js';
|
|
2
|
+
export default function generateRandomOutletOptions(): LslOutletOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRandomOutletOptions.js","sourceRoot":"","sources":["../../src/testDoubles/generateRandomOutletOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAG/C,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAA;AAE5D,MAAM,CAAC,OAAO,UAAU,2BAA2B;IAC/C,MAAM,gBAAgB,GAAG,SAAS,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAA;IAEzE,OAAO;QACH,IAAI,EAAE,UAAU,EAAE;QAClB,IAAI,EAAE,UAAU,EAAE;QAClB,YAAY,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5D,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QAChC,aAAa,EAAE,8BAA8B,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,EAAE,UAAU,EAAE;QACtB,YAAY,EAAE,UAAU,EAAE;QAC1B,KAAK,EAAE,UAAU,EAAE;QACnB,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QAC3B,aAAa,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"generateRandomOutletOptions.js","sourceRoot":"","sources":["../../src/testDoubles/generateRandomOutletOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAG/C,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAA;AAE5D,MAAM,CAAC,OAAO,UAAU,2BAA2B;IAC/C,MAAM,gBAAgB,GAAG,SAAS,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAA;IAEzE,OAAO;QACH,IAAI,EAAE,UAAU,EAAE;QAClB,IAAI,EAAE,UAAU,EAAE;QAClB,YAAY,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5D,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QAChC,aAAa,EAAE,8BAA8B,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,EAAE,UAAU,EAAE;QACtB,YAAY,EAAE,UAAU,EAAE;QAC1B,KAAK,EAAE,UAAU,EAAE;QACnB,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QAC3B,aAAa,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;KACd,CAAA;AACzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neurodevs/node-lsl",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "22.0.0",
|
|
4
4
|
"description": "Lab Streaming Layer (LSL) bindings for Node",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -42,16 +42,17 @@
|
|
|
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",
|
|
55
|
+
"prettier": "^3.9.6",
|
|
55
56
|
"typescript": "^5.9.3"
|
|
56
57
|
},
|
|
57
58
|
"resolutions": {
|
|
@@ -10,22 +10,22 @@ import {
|
|
|
10
10
|
} from '@neurodevs/ndx-native'
|
|
11
11
|
import AbstractModuleTest from '@neurodevs/node-tdd'
|
|
12
12
|
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
13
|
+
import SpyEventMarkerOutlet from '../testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js'
|
|
14
|
+
import FakeLslInfo from '../testDoubles/LslInfo/FakeLslInfo.js'
|
|
15
|
+
import SpyLslInfo from '../testDoubles/LslInfo/SpyLslInfo.js'
|
|
16
|
+
import FakeLslInlet from '../testDoubles/LslInlet/FakeLslInlet.js'
|
|
17
|
+
import SpyLslInlet from '../testDoubles/LslInlet/SpyLslInlet.js'
|
|
18
|
+
import FakeLslOutlet from '../testDoubles/LslOutlet/FakeLslOutlet.js'
|
|
19
|
+
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,
|
|
28
|
-
|
|
28
|
+
LslInletOptions,
|
|
29
29
|
} from '../impl/LslStreamInlet.js'
|
|
30
30
|
import LslStreamOutlet from '../impl/LslStreamOutlet.js'
|
|
31
31
|
|
|
@@ -33,8 +33,9 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
33
33
|
protected static fakeLiblsl: FakeLiblsl
|
|
34
34
|
protected static fakeLibndx: FakeLibndx
|
|
35
35
|
|
|
36
|
-
protected static readonly
|
|
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[]
|
|
@@ -90,15 +92,6 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
90
92
|
this.callsToSetTimeout.push(delayMs ?? 0)
|
|
91
93
|
return setTimeout(callback, 0, ...args)
|
|
92
94
|
}) as unknown as typeof setTimeout
|
|
93
|
-
|
|
94
|
-
LslStreamInlet.setTimeout = ((
|
|
95
|
-
callback: (...args: unknown[]) => void,
|
|
96
|
-
delayMs?: number,
|
|
97
|
-
...args: unknown[]
|
|
98
|
-
) => {
|
|
99
|
-
this.callsToSetTimeout.push(delayMs ?? 0)
|
|
100
|
-
return setTimeout(callback, 0, ...args)
|
|
101
|
-
}) as unknown as typeof setTimeout
|
|
102
95
|
}
|
|
103
96
|
|
|
104
97
|
protected static setFakeLibndx() {
|
|
@@ -108,39 +101,39 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
108
101
|
FakeLibndx.resetTestDouble()
|
|
109
102
|
FakeLibndx.fakeResult = { status: 200 }
|
|
110
103
|
|
|
111
|
-
|
|
104
|
+
BleGattController.ndx = this.fakeLibndx
|
|
112
105
|
}
|
|
113
106
|
|
|
114
|
-
protected static
|
|
115
|
-
LslStreamInfo.Class =
|
|
116
|
-
|
|
107
|
+
protected static setSpyLslInfo() {
|
|
108
|
+
LslStreamInfo.Class = SpyLslInfo
|
|
109
|
+
SpyLslInfo.resetTestDouble()
|
|
117
110
|
}
|
|
118
111
|
|
|
119
|
-
protected static
|
|
120
|
-
LslStreamInfo.Class =
|
|
121
|
-
|
|
112
|
+
protected static setFakeLslInfo() {
|
|
113
|
+
LslStreamInfo.Class = FakeLslInfo
|
|
114
|
+
FakeLslInfo.resetTestDouble()
|
|
122
115
|
}
|
|
123
116
|
|
|
124
|
-
protected static
|
|
125
|
-
LslStreamInlet.Class =
|
|
117
|
+
protected static setSpyLslInlet() {
|
|
118
|
+
LslStreamInlet.Class = SpyLslInlet
|
|
126
119
|
}
|
|
127
120
|
|
|
128
|
-
protected static
|
|
129
|
-
LslStreamInlet.Class =
|
|
130
|
-
|
|
121
|
+
protected static setFakeLslInlet() {
|
|
122
|
+
LslStreamInlet.Class = FakeLslInlet
|
|
123
|
+
FakeLslInlet.resetTestDouble()
|
|
131
124
|
}
|
|
132
125
|
|
|
133
|
-
protected static
|
|
134
|
-
LslStreamOutlet.Class =
|
|
135
|
-
|
|
126
|
+
protected static setFakeLslOutlet() {
|
|
127
|
+
LslStreamOutlet.Class = FakeLslOutlet
|
|
128
|
+
FakeLslOutlet.resetTestDouble()
|
|
136
129
|
}
|
|
137
130
|
|
|
138
|
-
protected static
|
|
139
|
-
|
|
131
|
+
protected static setSpyEventMarkerOutlet() {
|
|
132
|
+
LslEventMarkerOutlet.Class = SpyEventMarkerOutlet
|
|
140
133
|
}
|
|
141
134
|
|
|
142
|
-
protected static
|
|
143
|
-
LslWebSocketBridge.Class =
|
|
135
|
+
protected static setSpyLslWsBridge() {
|
|
136
|
+
LslWebSocketBridge.Class = SpyLslWsBridge
|
|
144
137
|
}
|
|
145
138
|
|
|
146
139
|
protected static setFakeWebSocket() {
|
|
@@ -154,10 +147,10 @@ export default class AbstractPackageTest extends AbstractModuleTest {
|
|
|
154
147
|
}
|
|
155
148
|
|
|
156
149
|
protected static async LslStreamInlet(
|
|
157
|
-
options: Partial<
|
|
150
|
+
options: Partial<LslInletOptions>,
|
|
158
151
|
onData: OnDataCallback
|
|
159
152
|
) {
|
|
160
|
-
const defaultOptions:
|
|
153
|
+
const defaultOptions: LslInletOptions = {
|
|
161
154
|
sourceId: this.sourceId,
|
|
162
155
|
chunkSize: this.chunkSize,
|
|
163
156
|
maxBufferedMs: this.maxBufferedMs,
|