@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.
Files changed (117) hide show
  1. package/README.md +6 -6
  2. package/build/__tests__/AbstractPackageTest.d.ts +2 -1
  3. package/build/__tests__/AbstractPackageTest.js +9 -7
  4. package/build/__tests__/AbstractPackageTest.js.map +1 -1
  5. package/build/__tests__/impl/{BleDeviceController.test.d.ts → BleGattController.test.d.ts} +3 -3
  6. package/build/__tests__/impl/{BleDeviceController.test.js → BleGattController.test.js} +65 -65
  7. package/build/__tests__/impl/BleGattController.test.js.map +1 -0
  8. package/build/__tests__/impl/BleObserverController.test.d.ts +22 -0
  9. package/build/__tests__/impl/BleObserverController.test.js +112 -0
  10. package/build/__tests__/impl/BleObserverController.test.js.map +1 -0
  11. package/build/__tests__/impl/{LslEventMarkerEmitter.test.d.ts → LslEventMarkerOutlet.test.d.ts} +3 -3
  12. package/build/__tests__/impl/{LslEventMarkerEmitter.test.js → LslEventMarkerOutlet.test.js} +35 -36
  13. package/build/__tests__/impl/LslEventMarkerOutlet.test.js.map +1 -0
  14. package/build/__tests__/impl/LslJsonOutlet.test.d.ts +14 -0
  15. package/build/__tests__/impl/LslJsonOutlet.test.js +118 -0
  16. package/build/__tests__/impl/LslJsonOutlet.test.js.map +1 -0
  17. package/build/__tests__/impl/LslStreamInfo.test.js +0 -1
  18. package/build/__tests__/impl/LslStreamInfo.test.js.map +1 -1
  19. package/build/__tests__/impl/LslStreamInlet.test.js +0 -1
  20. package/build/__tests__/impl/LslStreamInlet.test.js.map +1 -1
  21. package/build/__tests__/impl/LslStreamOutlet.test.js +0 -1
  22. package/build/__tests__/impl/LslStreamOutlet.test.js.map +1 -1
  23. package/build/__tests__/impl/LslWebSocketBridge.test.js +0 -1
  24. package/build/__tests__/impl/LslWebSocketBridge.test.js.map +1 -1
  25. package/build/__tests__/impl/UsbDeviceController.test.js.map +1 -1
  26. package/build/impl/{LslEventMarkerEmitter.d.ts → LslEventMarkerOutlet.d.ts} +6 -6
  27. package/build/impl/{LslEventMarkerEmitter.js → LslEventMarkerOutlet.js} +2 -2
  28. package/build/impl/LslEventMarkerOutlet.js.map +1 -0
  29. package/build/impl/LslJsonOutlet.d.ts +33 -0
  30. package/build/impl/LslJsonOutlet.js +44 -0
  31. package/build/impl/LslJsonOutlet.js.map +1 -0
  32. package/build/impl/LslStreamOutlet.d.ts +3 -4
  33. package/build/impl/controllers/{BleDeviceController.d.ts → BleGattController.d.ts} +10 -10
  34. package/build/impl/controllers/{BleDeviceController.js → BleGattController.js} +18 -18
  35. package/build/impl/controllers/BleGattController.js.map +1 -0
  36. package/build/impl/controllers/BleObserverController.d.ts +24 -0
  37. package/build/impl/controllers/BleObserverController.js +49 -0
  38. package/build/impl/controllers/BleObserverController.js.map +1 -0
  39. package/build/impl/controllers/UsbDeviceController.d.ts +9 -9
  40. package/build/impl/controllers/UsbDeviceController.js +7 -7
  41. package/build/impl/controllers/UsbDeviceController.js.map +1 -1
  42. package/build/index.d.ts +24 -16
  43. package/build/index.js +29 -19
  44. package/build/index.js.map +1 -1
  45. package/build/scripts/runEventMarkerOutlet.js +12 -0
  46. package/build/scripts/runEventMarkerOutlet.js.map +1 -0
  47. package/build/scripts/runMuse.js +2 -2
  48. package/build/scripts/runMuse.js.map +1 -1
  49. package/build/testDoubles/{BleController/FakeBleController.d.ts → BleGatt/FakeBleGatt.d.ts} +6 -6
  50. package/build/testDoubles/{BleController/FakeBleController.js → BleGatt/FakeBleGatt.js} +8 -8
  51. package/build/testDoubles/BleGatt/FakeBleGatt.js.map +1 -0
  52. package/build/testDoubles/{BleController/SpyBleController.d.ts → BleGatt/SpyBleGatt.d.ts} +4 -4
  53. package/build/testDoubles/{BleController/SpyBleController.js → BleGatt/SpyBleGatt.js} +3 -3
  54. package/build/testDoubles/BleGatt/SpyBleGatt.js.map +1 -0
  55. package/build/testDoubles/BleObserver/FakeBleObserver.d.ts +10 -0
  56. package/build/testDoubles/BleObserver/FakeBleObserver.js +20 -0
  57. package/build/testDoubles/BleObserver/FakeBleObserver.js.map +1 -0
  58. package/build/testDoubles/{LslEmitter/FakeLslEmitter.d.ts → EventMarkerOutlet/FakeEventMarkerOutlet.d.ts} +2 -2
  59. package/build/testDoubles/{LslEmitter/FakeLslEmitter.js → EventMarkerOutlet/FakeEventMarkerOutlet.js} +7 -7
  60. package/build/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.js.map +1 -0
  61. package/build/testDoubles/{LslEmitter/SpyLslEmitter.d.ts → EventMarkerOutlet/SpyEventMarkerOutlet.d.ts} +3 -3
  62. package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js +23 -0
  63. package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js.map +1 -0
  64. package/build/testDoubles/{LslEmitter/ThrowingLslEmitter.d.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.d.ts} +2 -2
  65. package/build/testDoubles/{LslEmitter/ThrowingLslEmitter.js → EventMarkerOutlet/ThrowingEventMarkerOutlet.js} +2 -2
  66. package/build/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.js.map +1 -0
  67. package/build/testDoubles/JsonOutlet/FakeJsonOutlet.d.ts +10 -0
  68. package/build/testDoubles/JsonOutlet/FakeJsonOutlet.js +20 -0
  69. package/build/testDoubles/JsonOutlet/FakeJsonOutlet.js.map +1 -0
  70. package/build/testDoubles/UsbDevice/FakeUsbDevice.d.ts +12 -0
  71. package/build/testDoubles/UsbDevice/FakeUsbDevice.js +25 -0
  72. package/build/testDoubles/UsbDevice/FakeUsbDevice.js.map +1 -0
  73. package/package.json +3 -3
  74. package/src/__tests__/AbstractPackageTest.ts +9 -7
  75. package/src/__tests__/impl/{BleDeviceController.test.ts → BleGattController.test.ts} +43 -43
  76. package/src/__tests__/impl/BleObserverController.test.ts +158 -0
  77. package/src/__tests__/impl/{LslEventMarkerEmitter.test.ts → LslEventMarkerOutlet.test.ts} +20 -19
  78. package/src/__tests__/impl/LslJsonOutlet.test.ts +135 -0
  79. package/src/__tests__/impl/LslStreamInfo.test.ts +0 -1
  80. package/src/__tests__/impl/LslStreamInlet.test.ts +0 -1
  81. package/src/__tests__/impl/LslStreamOutlet.test.ts +0 -1
  82. package/src/__tests__/impl/LslWebSocketBridge.test.ts +0 -1
  83. package/src/__tests__/impl/UsbDeviceController.test.ts +2 -2
  84. package/src/impl/{LslEventMarkerEmitter.ts → LslEventMarkerOutlet.ts} +8 -6
  85. package/src/impl/LslJsonOutlet.ts +87 -0
  86. package/src/impl/LslStreamOutlet.ts +7 -5
  87. package/src/impl/controllers/{BleDeviceController.ts → BleGattController.ts} +23 -28
  88. package/src/impl/controllers/BleObserverController.ts +85 -0
  89. package/src/impl/controllers/UsbDeviceController.ts +14 -16
  90. package/src/index.ts +40 -24
  91. package/src/scripts/{runLslEmitter.ts → runEventMarkerOutlet.ts} +5 -5
  92. package/src/scripts/runMuse.ts +2 -2
  93. package/src/testDoubles/{BleController/FakeBleController.ts → BleGatt/FakeBleGatt.ts} +14 -14
  94. package/src/testDoubles/{BleController/SpyBleController.ts → BleGatt/SpyBleGatt.ts} +5 -5
  95. package/src/testDoubles/BleObserver/FakeBleObserver.ts +28 -0
  96. package/src/testDoubles/{LslEmitter/FakeLslEmitter.ts → EventMarkerOutlet/FakeEventMarkerOutlet.ts} +8 -8
  97. package/src/testDoubles/{LslEmitter/SpyLslEmitter.ts → EventMarkerOutlet/SpyEventMarkerOutlet.ts} +7 -7
  98. package/src/testDoubles/{LslEmitter/ThrowingLslEmitter.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.ts} +3 -3
  99. package/src/testDoubles/JsonOutlet/FakeJsonOutlet.ts +25 -0
  100. package/src/testDoubles/UsbDevice/FakeUsbDevice.ts +34 -0
  101. package/build/__tests__/impl/BleDeviceController.test.js.map +0 -1
  102. package/build/__tests__/impl/LslEventMarkerEmitter.test.js.map +0 -1
  103. package/build/impl/LslEventMarkerEmitter.js.map +0 -1
  104. package/build/impl/controllers/BleDeviceController.js.map +0 -1
  105. package/build/scripts/runLslEmitter.js +0 -12
  106. package/build/scripts/runLslEmitter.js.map +0 -1
  107. package/build/testDoubles/BleController/FakeBleController.js.map +0 -1
  108. package/build/testDoubles/BleController/SpyBleController.js.map +0 -1
  109. package/build/testDoubles/LslEmitter/FakeLslEmitter.js.map +0 -1
  110. package/build/testDoubles/LslEmitter/SpyLslEmitter.js +0 -23
  111. package/build/testDoubles/LslEmitter/SpyLslEmitter.js.map +0 -1
  112. package/build/testDoubles/LslEmitter/ThrowingLslEmitter.js.map +0 -1
  113. package/build/testDoubles/UsbController/FakeUsbController.d.ts +0 -12
  114. package/build/testDoubles/UsbController/FakeUsbController.js +0 -25
  115. package/build/testDoubles/UsbController/FakeUsbController.js.map +0 -1
  116. package/src/testDoubles/UsbController/FakeUsbController.ts +0 -34
  117. /package/build/scripts/{runLslEmitter.d.ts → runEventMarkerOutlet.d.ts} +0 -0
package/README.md CHANGED
@@ -8,7 +8,7 @@ Lab Streaming Layer (LSL) for synchronized streaming of multi-modal, time-series
8
8
  - [Installation](#installation)
9
9
  - [Usage](#usage)
10
10
  - [LslStreamOutlet](#lslstreamoutlet)
11
- - [LslEventMarkerEmitter](#LslEventMarkerEmitter)
11
+ - [LslEventMarkerOutlet](#lsleventmarkeroutlet)
12
12
  - [Test Doubles](#test-doubles)
13
13
 
14
14
  ## Overview
@@ -59,21 +59,21 @@ const outlet = await LslStreamOutlet.Create({
59
59
  outlet.pushSample([1, 2, 3, 4, 5])
60
60
  ```
61
61
 
62
- ### LslEventMarkerEmitter
62
+ ### LslEventMarkerOutlet
63
63
 
64
64
  LSL is also often used to push event markers that mark different phases of an experiment or session. The `emitMany` method pushes an event marker, waits for a specified duration, then pushes the next marker. From experience, each event marker should have a `waitAfterMs` of at least 100 ms or so to ensure LSL receives the event markers in the right order.
65
65
 
66
66
  ```typescript
67
- import { LslEventMarkerEmitter } from '@neurodevs/node-lsl'
67
+ import { LslEventMarkerOutlet } from '@neurodevs/node-lsl'
68
68
 
69
- const emitter = await LslEventMarkerEmitter.Create()
69
+ const outlet = await LslEventMarkerOutlet.Create()
70
70
 
71
71
  const markers = [
72
72
  { name: 'phase-1-begin', waitAfterMs: 5000 },
73
73
  { name: 'phase-1-end', waitAfterMs: 100 },
74
74
  ]
75
75
 
76
- const promise = emitter.emitMany(markers)
76
+ const promise = outlet.emitMany(markers)
77
77
 
78
- emitter.interrupt()
78
+ outlet.interrupt()
79
79
  ```
@@ -6,6 +6,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
6
6
  protected static fakeLiblsl: FakeLiblsl;
7
7
  protected static fakeLibndx: FakeLibndx;
8
8
  protected static readonly fakeLslInfo: FakeLslInfo;
9
+ protected static readonly deviceUuid: string;
9
10
  protected static readonly name_: string;
10
11
  protected static readonly type: string;
11
12
  protected static readonly sourceId: string;
@@ -25,7 +26,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
25
26
  protected static setSpyLslInlet(): void;
26
27
  protected static setFakeLslInlet(): void;
27
28
  protected static setFakeLslOutlet(): void;
28
- protected static setSpyLslEmitter(): void;
29
+ protected static setSpyEventMarkerOutlet(): void;
29
30
  protected static setSpyLslWsBridge(): void;
30
31
  protected static setFakeWebSocket(): void;
31
32
  protected static setFakeWebSocketServer(): void;
@@ -1,7 +1,7 @@
1
1
  import { randomInt } from 'node:crypto';
2
2
  import { FakeLiblsl, FakeLibndx, LiblslAdapter, LibndxAdapter, } from '@neurodevs/ndx-native';
3
3
  import AbstractModuleTest from '@neurodevs/node-tdd';
4
- import SpyLslEmitter from '../testDoubles/LslEmitter/SpyLslEmitter.js';
4
+ import SpyEventMarkerOutlet from '../testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js';
5
5
  import FakeLslInfo from '../testDoubles/LslInfo/FakeLslInfo.js';
6
6
  import SpyLslInfo from '../testDoubles/LslInfo/SpyLslInfo.js';
7
7
  import FakeLslInlet from '../testDoubles/LslInlet/FakeLslInlet.js';
@@ -11,8 +11,8 @@ import SpyLslWsBridge from '../testDoubles/LslWsBridge/SpyLslWsBridge.js';
11
11
  import FakeWebSocket from '../testDoubles/WebSockets/FakeWebSocket.js';
12
12
  import FakeWebSocketServer from '../testDoubles/WebSockets/FakeWebSocketServer.js';
13
13
  import LslWebSocketBridge from '../impl/LslWebSocketBridge.js';
14
- import BleDeviceController from '../impl/controllers/BleDeviceController.js';
15
- import LslEventMarkerEmitter from '../impl/LslEventMarkerEmitter.js';
14
+ import BleGattController from '../impl/controllers/BleGattController.js';
15
+ import LslEventMarkerOutlet from '../impl/LslEventMarkerOutlet.js';
16
16
  import LslStreamInfo from '../impl/LslStreamInfo.js';
17
17
  import LslStreamInlet from '../impl/LslStreamInlet.js';
18
18
  import LslStreamOutlet from '../impl/LslStreamOutlet.js';
@@ -20,6 +20,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
20
20
  static fakeLiblsl;
21
21
  static fakeLibndx;
22
22
  static fakeLslInfo = new FakeLslInfo();
23
+ static deviceUuid = this.generateId();
23
24
  static name_ = this.generateId();
24
25
  static type = this.generateId();
25
26
  static sourceId = this.generateId();
@@ -36,6 +37,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
36
37
  static async beforeEach() {
37
38
  await super.beforeEach();
38
39
  this.setImmediateTimeouts();
40
+ this.setFakeLiblsl();
39
41
  this.setFakeLibndx();
40
42
  }
41
43
  static setFakeLiblsl() {
@@ -47,7 +49,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
47
49
  static callsToSetTimeout = [];
48
50
  static setImmediateTimeouts() {
49
51
  this.callsToSetTimeout = [];
50
- BleDeviceController.setTimeout = ((callback, delayMs, ...args) => {
52
+ BleGattController.setTimeout = ((callback, delayMs, ...args) => {
51
53
  this.callsToSetTimeout.push(delayMs ?? 0);
52
54
  return setTimeout(callback, 0, ...args);
53
55
  });
@@ -61,7 +63,7 @@ export default class AbstractPackageTest extends AbstractModuleTest {
61
63
  LibndxAdapter.setInstance(this.fakeLibndx);
62
64
  FakeLibndx.resetTestDouble();
63
65
  FakeLibndx.fakeResult = { status: 200 };
64
- BleDeviceController.ndx = this.fakeLibndx;
66
+ BleGattController.ndx = this.fakeLibndx;
65
67
  }
66
68
  static setSpyLslInfo() {
67
69
  LslStreamInfo.Class = SpyLslInfo;
@@ -82,8 +84,8 @@ export default class AbstractPackageTest extends AbstractModuleTest {
82
84
  LslStreamOutlet.Class = FakeLslOutlet;
83
85
  FakeLslOutlet.resetTestDouble();
84
86
  }
85
- static setSpyLslEmitter() {
86
- LslEventMarkerEmitter.Class = SpyLslEmitter;
87
+ static setSpyEventMarkerOutlet() {
88
+ LslEventMarkerOutlet.Class = SpyEventMarkerOutlet;
87
89
  }
88
90
  static setSpyLslWsBridge() {
89
91
  LslWebSocketBridge.Class = SpyLslWsBridge;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractPackageTest.js","sourceRoot":"","sources":["../../src/__tests__/AbstractPackageTest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractPackageTest.js","sourceRoot":"","sources":["../../src/__tests__/AbstractPackageTest.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import AbstractPackageTest from '../AbstractPackageTest.js';
2
- export default class BleDeviceControllerTest extends AbstractPackageTest {
2
+ export default class BleGattControllerTest extends AbstractPackageTest {
3
3
  private static instance;
4
4
  private static readonly uuid;
5
5
  private static readonly namePrefix;
@@ -54,6 +54,6 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
54
54
  private static setFake400Error;
55
55
  private static setFake500Error;
56
56
  private static setFake500ErrorWithoutError;
57
- private static BleDeviceController;
58
- private static BleControllerWithPrefix;
57
+ private static BleGattController;
58
+ private static BleGattControllerWithPrefix;
59
59
  }
@@ -7,10 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { randomInt } from 'node:crypto';
8
8
  import { test, assert } from '@neurodevs/node-tdd';
9
9
  import { FakeLibndx } from '@neurodevs/ndx-native';
10
- import SpyBleController from '../../testDoubles/BleController/SpyBleController.js';
10
+ import SpyBleGatt from '../../testDoubles/BleGatt/SpyBleGatt.js';
11
11
  import AbstractPackageTest from '../AbstractPackageTest.js';
12
- import BleDeviceController from '../../impl/controllers/BleDeviceController.js';
13
- export default class BleDeviceControllerTest extends AbstractPackageTest {
12
+ import BleGattController from '../../impl/controllers/BleGattController.js';
13
+ export default class BleGattControllerTest extends AbstractPackageTest {
14
14
  static instance;
15
15
  static uuid = this.generateId();
16
16
  static namePrefix = this.generateId();
@@ -49,26 +49,26 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
49
49
  name: this.generateId(),
50
50
  };
51
51
  static async beforeAll() {
52
- assert.isEqual(BleDeviceController.waitAfterMs, 1000, 'Set incorrect waitAfterMs!');
52
+ assert.isEqual(BleGattController.waitAfterMs, 1000, 'Set incorrect waitAfterMs!');
53
53
  }
54
54
  static async beforeEach() {
55
55
  await super.beforeEach();
56
- BleDeviceController.waitAfterMs = 0;
57
- BleDeviceController.Class = SpyBleController;
56
+ BleGattController.waitAfterMs = 0;
57
+ BleGattController.Class = SpyBleGatt;
58
58
  this.wasConnected = false;
59
- this.instance = this.BleDeviceController();
59
+ this.instance = this.BleGattController();
60
60
  }
61
61
  static async createsInstance() {
62
62
  assert.isTruthy(this.instance, 'Failed to create instance!');
63
63
  }
64
64
  static async connectCallsLibndxCreateBleBackend() {
65
65
  await this.connect();
66
- assert.isEqualDeep(FakeLibndx.callsToCreateBleBackend[0], {
66
+ assert.isEqualDeep(FakeLibndx.callsToCreateBleGattBackend[0], {
67
67
  deviceUuid: this.uuid,
68
- }, 'Did not call createBleBackend!');
68
+ }, 'Did not call createBleGattBackend!');
69
69
  }
70
70
  static async discoversUuidWhenDeviceUuidNotProvided() {
71
- const instance = await this.BleControllerWithPrefix();
71
+ const instance = await this.BleGattControllerWithPrefix();
72
72
  await this.connectWithDiscovery(instance);
73
73
  const call = FakeLibndx.callsToDiscoverBleUuid[0];
74
74
  assert.isEqual(call?.namePrefix, this.namePrefix, 'Did not call discoverBleUuid with deviceNamePrefix!');
@@ -79,19 +79,19 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
79
79
  assert.isEqual(FakeLibndx.callsToDiscoverBleUuid.length, 0, 'Should not call discoverBleUuid when deviceUuid is provided!');
80
80
  }
81
81
  static async usesDiscoveredUuidToCreateBleBackend() {
82
- const instance = await this.BleControllerWithPrefix();
82
+ const instance = await this.BleGattControllerWithPrefix();
83
83
  await this.connectWithDiscovery(instance);
84
- assert.isEqualDeep(FakeLibndx.callsToCreateBleBackend[0], {
84
+ assert.isEqualDeep(FakeLibndx.callsToCreateBleGattBackend[0], {
85
85
  deviceUuid: this.discoveredUuid,
86
86
  }, 'Did not create BLE backend with the discovered uuid!');
87
87
  }
88
88
  static async usesDiscoveredUuidToStartBleBackend() {
89
- const instance = await this.BleControllerWithPrefix();
89
+ const instance = await this.BleGattControllerWithPrefix();
90
90
  await this.connectWithDiscovery(instance);
91
- assert.isEqual(FakeLibndx.callsToStartBleBackend[0]?.deviceUuid, this.discoveredUuid, 'Did not start BLE backend with the discovered uuid!');
91
+ assert.isEqual(FakeLibndx.callsToStartBleGattBackend[0]?.deviceUuid, this.discoveredUuid, 'Did not start BLE backend with the discovered uuid!');
92
92
  }
93
93
  static async exposesDiscoveredUuid() {
94
- const instance = await this.BleControllerWithPrefix();
94
+ const instance = await this.BleGattControllerWithPrefix();
95
95
  await this.connectWithDiscovery(instance);
96
96
  assert.isEqual(instance.uuid, this.discoveredUuid, 'Did not expose the discovered uuid!');
97
97
  }
@@ -105,9 +105,9 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
105
105
  }
106
106
  static async connectCallsLibndxStartBleBackend() {
107
107
  await this.connect();
108
- const call = FakeLibndx.callsToStartBleBackend[0];
109
- assert.isEqual(call.deviceUuid, this.uuid, 'Did not call startBleBackend with correct deviceUuid!');
110
- assert.isEqual(call.charCallbacks.length, 2, 'Did not call startBleBackend with charCallbacks!');
108
+ const call = FakeLibndx.callsToStartBleGattBackend[0];
109
+ assert.isEqual(call.deviceUuid, this.uuid, 'Did not call startBleGattBackend with correct deviceUuid!');
110
+ assert.isEqual(call.charCallbacks.length, 2, 'Did not call startBleGattBackend with charCallbacks!');
111
111
  let i = 0;
112
112
  for (const charCallback of call.charCallbacks) {
113
113
  assert.isEqual(charCallback.charUuid, this.charCallbacks[i].charUuid, 'Incorrect charUuid!');
@@ -118,13 +118,13 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
118
118
  }
119
119
  static async startBleBackendThrowsOn400() {
120
120
  //@ts-ignore
121
- this.instance.createBleBackend = () => { };
121
+ this.instance.createBleGattBackend = () => { };
122
122
  this.setFake400Error();
123
123
  await assert.doesThrowAsync(async () => await this.instance.connect(), this.fake400Error, 'Did not throw error!');
124
124
  }
125
125
  static async startBleBackendThrowsOn500() {
126
126
  //@ts-ignore
127
- this.instance.createBleBackend = () => { };
127
+ this.instance.createBleGattBackend = () => { };
128
128
  this.setFake500Error();
129
129
  await assert.doesThrowAsync(async () => await this.instance.connect(), this.fake500Error, 'Did not throw error!');
130
130
  }
@@ -134,17 +134,17 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
134
134
  }
135
135
  static async waitsAfterOnConnectedToDiscoverServices() {
136
136
  const waitAfterMs = 20;
137
- BleDeviceController.waitAfterMs = waitAfterMs;
137
+ BleGattController.waitAfterMs = waitAfterMs;
138
138
  await this.connect();
139
139
  assert.isTruthy(this.callsToSetTimeout.includes(waitAfterMs), 'Did not wait after on connected!');
140
140
  }
141
141
  static async writeCharacteristicCallsLibndxBinding() {
142
142
  await this.writeCharacteristic();
143
- assert.isEqualDeep(FakeLibndx.callsToWriteBleCharacteristic[0], {
143
+ assert.isEqualDeep(FakeLibndx.callsToWriteBleGattChar[0], {
144
144
  deviceUuid: this.uuid,
145
145
  charUuid: this.charUuid,
146
146
  value: this.charValueToWrite,
147
- }, 'Did not call writeBleCharacteristic as expected!');
147
+ }, 'Did not call writeBleGattChar as expected!');
148
148
  }
149
149
  static async writeCharacteristicThrowsOn400() {
150
150
  this.setFake400Error();
@@ -156,10 +156,10 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
156
156
  }
157
157
  static async subscribeCharacteristicsCallsLibndxBinding() {
158
158
  await this.subscribeCharacteristics();
159
- assert.isEqualDeep(FakeLibndx.callsToAddBleCharCallbacks[0], {
159
+ assert.isEqualDeep(FakeLibndx.callsToRegisterBleGattCharCallbacks[0], {
160
160
  deviceUuid: this.uuid,
161
161
  charCallbacks: this.extraCharCallbacks,
162
- }, 'Did not call addBleCharCallbacks as expected!');
162
+ }, 'Did not call registerBleGattCharCallbacks as expected!');
163
163
  }
164
164
  static async subscribeCharacteristicsMergesIntoCharCallbacks() {
165
165
  await this.subscribeCharacteristics();
@@ -171,17 +171,17 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
171
171
  }
172
172
  static async callsSetBleRssiInterval() {
173
173
  await this.connect();
174
- const { deviceUuid, intervalMs } = FakeLibndx.callsToSetBleRssiInterval[0];
174
+ const { deviceUuid, intervalMs } = FakeLibndx.callsToStartBleGattRssiPolling[0];
175
175
  assert.isEqualDeep({ deviceUuid, intervalMs }, {
176
176
  deviceUuid: this.uuid,
177
177
  intervalMs: this.rssiIntervalMs,
178
- }, 'Did not call setBleRssiInterval as expected!');
178
+ }, 'Did not call startBleGattRssiPolling as expected!');
179
179
  }
180
180
  static async disconnectCallsLibndxStopBleBackend() {
181
181
  await this.disconnect();
182
- assert.isEqualDeep(FakeLibndx.callsToStopBleBackend[0], {
182
+ assert.isEqualDeep(FakeLibndx.callsToStopBleGattBackend[0], {
183
183
  deviceUuid: this.uuid,
184
- }, 'Did not call stopBleBackend!');
184
+ }, 'Did not call stopBleGattBackend!');
185
185
  }
186
186
  static async disconnectThrowsOn400() {
187
187
  this.setFake400Error();
@@ -209,15 +209,15 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
209
209
  }
210
210
  static async connect() {
211
211
  const promise = this.instance.connect();
212
- const startCall = FakeLibndx.callsToStartBleBackend[0];
212
+ const startCall = FakeLibndx.callsToStartBleGattBackend[0];
213
213
  startCall?.onConnected(this.nativePeripheral);
214
214
  await promise;
215
215
  }
216
216
  static async connectWithDiscovery(instance) {
217
217
  const promise = instance.connect();
218
218
  FakeLibndx.callsToDiscoverBleUuid[0]?.onDiscovered(this.discoveredUuid);
219
- await this.waitForCall(() => FakeLibndx.callsToStartBleBackend[0]);
220
- FakeLibndx.callsToStartBleBackend[0]?.onConnected(this.nativePeripheral);
219
+ await this.waitForCall(() => FakeLibndx.callsToStartBleGattBackend[0]);
220
+ FakeLibndx.callsToStartBleGattBackend[0]?.onConnected(this.nativePeripheral);
221
221
  await promise;
222
222
  }
223
223
  static async waitForCall(getCall) {
@@ -259,8 +259,8 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
259
259
  status: 500,
260
260
  };
261
261
  }
262
- static BleDeviceController(options) {
263
- return BleDeviceController.Create({
262
+ static BleGattController(options) {
263
+ return BleGattController.Create({
264
264
  deviceUuid: this.uuid,
265
265
  charCallbacks: this.charCallbacks,
266
266
  onConnected: this.onConnected,
@@ -268,8 +268,8 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
268
268
  ...options,
269
269
  });
270
270
  }
271
- static BleControllerWithPrefix() {
272
- return this.BleDeviceController({
271
+ static BleGattControllerWithPrefix() {
272
+ return this.BleGattController({
273
273
  deviceNamePrefix: this.namePrefix,
274
274
  deviceUuid: undefined,
275
275
  });
@@ -277,86 +277,86 @@ export default class BleDeviceControllerTest extends AbstractPackageTest {
277
277
  }
278
278
  __decorate([
279
279
  test()
280
- ], BleDeviceControllerTest, "createsInstance", null);
280
+ ], BleGattControllerTest, "createsInstance", null);
281
281
  __decorate([
282
282
  test()
283
- ], BleDeviceControllerTest, "connectCallsLibndxCreateBleBackend", null);
283
+ ], BleGattControllerTest, "connectCallsLibndxCreateBleBackend", null);
284
284
  __decorate([
285
285
  test()
286
- ], BleDeviceControllerTest, "discoversUuidWhenDeviceUuidNotProvided", null);
286
+ ], BleGattControllerTest, "discoversUuidWhenDeviceUuidNotProvided", null);
287
287
  __decorate([
288
288
  test()
289
- ], BleDeviceControllerTest, "doesNotDiscoverUuidWhenDeviceUuidProvided", null);
289
+ ], BleGattControllerTest, "doesNotDiscoverUuidWhenDeviceUuidProvided", null);
290
290
  __decorate([
291
291
  test()
292
- ], BleDeviceControllerTest, "usesDiscoveredUuidToCreateBleBackend", null);
292
+ ], BleGattControllerTest, "usesDiscoveredUuidToCreateBleBackend", null);
293
293
  __decorate([
294
294
  test()
295
- ], BleDeviceControllerTest, "usesDiscoveredUuidToStartBleBackend", null);
295
+ ], BleGattControllerTest, "usesDiscoveredUuidToStartBleBackend", null);
296
296
  __decorate([
297
297
  test()
298
- ], BleDeviceControllerTest, "exposesDiscoveredUuid", null);
298
+ ], BleGattControllerTest, "exposesDiscoveredUuid", null);
299
299
  __decorate([
300
300
  test()
301
- ], BleDeviceControllerTest, "createBleBackendThrowsOn400", null);
301
+ ], BleGattControllerTest, "createBleBackendThrowsOn400", null);
302
302
  __decorate([
303
303
  test()
304
- ], BleDeviceControllerTest, "createBleBackendThrowsOn500", null);
304
+ ], BleGattControllerTest, "createBleBackendThrowsOn500", null);
305
305
  __decorate([
306
306
  test()
307
- ], BleDeviceControllerTest, "connectCallsLibndxStartBleBackend", null);
307
+ ], BleGattControllerTest, "connectCallsLibndxStartBleBackend", null);
308
308
  __decorate([
309
309
  test()
310
- ], BleDeviceControllerTest, "startBleBackendThrowsOn400", null);
310
+ ], BleGattControllerTest, "startBleBackendThrowsOn400", null);
311
311
  __decorate([
312
312
  test()
313
- ], BleDeviceControllerTest, "startBleBackendThrowsOn500", null);
313
+ ], BleGattControllerTest, "startBleBackendThrowsOn500", null);
314
314
  __decorate([
315
315
  test()
316
- ], BleDeviceControllerTest, "connectWaitsForOnConnectedEvent", null);
316
+ ], BleGattControllerTest, "connectWaitsForOnConnectedEvent", null);
317
317
  __decorate([
318
318
  test()
319
- ], BleDeviceControllerTest, "waitsAfterOnConnectedToDiscoverServices", null);
319
+ ], BleGattControllerTest, "waitsAfterOnConnectedToDiscoverServices", null);
320
320
  __decorate([
321
321
  test()
322
- ], BleDeviceControllerTest, "writeCharacteristicCallsLibndxBinding", null);
322
+ ], BleGattControllerTest, "writeCharacteristicCallsLibndxBinding", null);
323
323
  __decorate([
324
324
  test()
325
- ], BleDeviceControllerTest, "writeCharacteristicThrowsOn400", null);
325
+ ], BleGattControllerTest, "writeCharacteristicThrowsOn400", null);
326
326
  __decorate([
327
327
  test()
328
- ], BleDeviceControllerTest, "writeCharacteristicThrowsOn500", null);
328
+ ], BleGattControllerTest, "writeCharacteristicThrowsOn500", null);
329
329
  __decorate([
330
330
  test()
331
- ], BleDeviceControllerTest, "subscribeCharacteristicsCallsLibndxBinding", null);
331
+ ], BleGattControllerTest, "subscribeCharacteristicsCallsLibndxBinding", null);
332
332
  __decorate([
333
333
  test()
334
- ], BleDeviceControllerTest, "subscribeCharacteristicsMergesIntoCharCallbacks", null);
334
+ ], BleGattControllerTest, "subscribeCharacteristicsMergesIntoCharCallbacks", null);
335
335
  __decorate([
336
336
  test()
337
- ], BleDeviceControllerTest, "subscribeCharacteristicsThrowsOn400", null);
337
+ ], BleGattControllerTest, "subscribeCharacteristicsThrowsOn400", null);
338
338
  __decorate([
339
339
  test()
340
- ], BleDeviceControllerTest, "callsSetBleRssiInterval", null);
340
+ ], BleGattControllerTest, "callsSetBleRssiInterval", null);
341
341
  __decorate([
342
342
  test()
343
- ], BleDeviceControllerTest, "disconnectCallsLibndxStopBleBackend", null);
343
+ ], BleGattControllerTest, "disconnectCallsLibndxStopBleBackend", null);
344
344
  __decorate([
345
345
  test()
346
- ], BleDeviceControllerTest, "disconnectThrowsOn400", null);
346
+ ], BleGattControllerTest, "disconnectThrowsOn400", null);
347
347
  __decorate([
348
348
  test()
349
- ], BleDeviceControllerTest, "disconnectThrowsOn500", null);
349
+ ], BleGattControllerTest, "disconnectThrowsOn500", null);
350
350
  __decorate([
351
351
  test()
352
- ], BleDeviceControllerTest, "disconnectResetsConnectedFlag", null);
352
+ ], BleGattControllerTest, "disconnectResetsConnectedFlag", null);
353
353
  __decorate([
354
354
  test()
355
- ], BleDeviceControllerTest, "exposesPeriperalName", null);
355
+ ], BleGattControllerTest, "exposesPeriperalName", null);
356
356
  __decorate([
357
357
  test()
358
- ], BleDeviceControllerTest, "returnsNAIfNameNotAvailable", null);
358
+ ], BleGattControllerTest, "returnsNAIfNameNotAvailable", null);
359
359
  __decorate([
360
360
  test()
361
- ], BleDeviceControllerTest, "throwsWithUnknownErrorIfNoError", null);
362
- //# sourceMappingURL=BleDeviceController.test.js.map
361
+ ], BleGattControllerTest, "throwsWithUnknownErrorIfNoError", null);
362
+ //# sourceMappingURL=BleGattController.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleGattController.test.js","sourceRoot":"","sources":["../../../src/__tests__/impl/BleGattController.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import AbstractPackageTest from '../AbstractPackageTest.js';
2
+ export default class BleObserverControllerTest extends AbstractPackageTest {
3
+ private static instance;
4
+ private static passedAdvertisements;
5
+ private static readonly fakeError;
6
+ private static readonly data;
7
+ private static readonly length;
8
+ private static readonly timestampSec;
9
+ protected static beforeEach(): Promise<void>;
10
+ protected static createsInstance(): Promise<void>;
11
+ protected static startObservingCreatesBleObserverBackend(): Promise<void>;
12
+ protected static startObservingStartsBleObserverBackend(): Promise<void>;
13
+ protected static passesExpectedArgsToOnAdvertisement(): Promise<void>;
14
+ protected static stopObservingStopsBleObserverBackend(): Promise<void>;
15
+ protected static createBleObserverBackendThrowsOnError(): Promise<void>;
16
+ protected static startObservingThrowsOnError(): Promise<void>;
17
+ protected static stopObservingThrowsOnError(): Promise<void>;
18
+ private static setFakeErrorResult;
19
+ private static startObserving;
20
+ private static stopObserving;
21
+ private static BleObserverController;
22
+ }
@@ -0,0 +1,112 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { test, assert } from '@neurodevs/node-tdd';
8
+ import BleObserverController from '../../impl/controllers/BleObserverController.js';
9
+ import AbstractPackageTest from '../AbstractPackageTest.js';
10
+ import { FakeLibndx } from '@neurodevs/ndx-native';
11
+ export default class BleObserverControllerTest extends AbstractPackageTest {
12
+ static instance;
13
+ static passedAdvertisements;
14
+ static fakeError = this.generateId();
15
+ static data = Buffer.from([0x01, 0x02, 0x03]);
16
+ static length = 3;
17
+ static timestampSec = 1234.5;
18
+ static async beforeEach() {
19
+ await super.beforeEach();
20
+ this.passedAdvertisements = [];
21
+ this.instance = this.BleObserverController();
22
+ }
23
+ static async createsInstance() {
24
+ assert.isTruthy(this.instance, 'Failed to create instance!');
25
+ }
26
+ static async startObservingCreatesBleObserverBackend() {
27
+ await this.startObserving();
28
+ assert.isEqualDeep(FakeLibndx.callsToCreateBleObserver[0], {
29
+ deviceUuid: this.deviceUuid,
30
+ });
31
+ }
32
+ static async startObservingStartsBleObserverBackend() {
33
+ await this.startObserving();
34
+ const { deviceUuid, onAdvertisement } = FakeLibndx.callsToStartBleObserver[0];
35
+ assert.isEqual(deviceUuid, this.deviceUuid, 'Did not pass deviceUuid to startBleObserverBackend!');
36
+ assert.isFunction(onAdvertisement, 'Did not pass onAdvertisement to startBleObserverBackend!');
37
+ }
38
+ static async passesExpectedArgsToOnAdvertisement() {
39
+ await this.startObserving();
40
+ FakeLibndx.callsToStartBleObserver[0]?.onAdvertisement(this.data, this.length, this.timestampSec);
41
+ assert.isEqualDeep(this.passedAdvertisements[0], {
42
+ data: this.data,
43
+ length: this.length,
44
+ timestampSec: this.timestampSec,
45
+ }, 'Did not pass expected args to onAdvertisement!');
46
+ }
47
+ static async stopObservingStopsBleObserverBackend() {
48
+ await this.stopObserving();
49
+ assert.isEqualDeep(FakeLibndx.callsToStopBleObserver[0], {
50
+ deviceUuid: this.deviceUuid,
51
+ });
52
+ }
53
+ static async createBleObserverBackendThrowsOnError() {
54
+ this.setFakeErrorResult();
55
+ //@ts-ignore
56
+ this.instance.startBleObserverBackend = () => { };
57
+ await assert.doesThrowAsync(async () => await this.startObserving(), this.fakeError, 'Did not throw error!');
58
+ }
59
+ static async startObservingThrowsOnError() {
60
+ this.setFakeErrorResult();
61
+ await assert.doesThrowAsync(async () => await this.startObserving(), this.fakeError, 'Did not throw error!');
62
+ }
63
+ static async stopObservingThrowsOnError() {
64
+ this.setFakeErrorResult();
65
+ await assert.doesThrowAsync(async () => await this.stopObserving(), this.fakeError, 'Did not throw error!');
66
+ }
67
+ static setFakeErrorResult() {
68
+ FakeLibndx.fakeResult = {
69
+ status: 400,
70
+ error: this.fakeError,
71
+ };
72
+ }
73
+ static async startObserving() {
74
+ await this.instance.startObserving();
75
+ }
76
+ static async stopObserving() {
77
+ await this.instance.stopObserving();
78
+ }
79
+ static BleObserverController() {
80
+ return BleObserverController.Create({
81
+ deviceUuid: this.deviceUuid,
82
+ onAdvertisement: (data, length, timestampSec) => {
83
+ this.passedAdvertisements.push({ data, length, timestampSec });
84
+ },
85
+ });
86
+ }
87
+ }
88
+ __decorate([
89
+ test()
90
+ ], BleObserverControllerTest, "createsInstance", null);
91
+ __decorate([
92
+ test()
93
+ ], BleObserverControllerTest, "startObservingCreatesBleObserverBackend", null);
94
+ __decorate([
95
+ test()
96
+ ], BleObserverControllerTest, "startObservingStartsBleObserverBackend", null);
97
+ __decorate([
98
+ test()
99
+ ], BleObserverControllerTest, "passesExpectedArgsToOnAdvertisement", null);
100
+ __decorate([
101
+ test()
102
+ ], BleObserverControllerTest, "stopObservingStopsBleObserverBackend", null);
103
+ __decorate([
104
+ test()
105
+ ], BleObserverControllerTest, "createBleObserverBackendThrowsOnError", null);
106
+ __decorate([
107
+ test()
108
+ ], BleObserverControllerTest, "startObservingThrowsOnError", null);
109
+ __decorate([
110
+ test()
111
+ ], BleObserverControllerTest, "stopObservingThrowsOnError", null);
112
+ //# sourceMappingURL=BleObserverController.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleObserverController.test.js","sourceRoot":"","sources":["../../../src/__tests__/impl/BleObserverController.test.ts"],"names":[],"mappings":"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"}