@neurodevs/node-lsl 11.4.2 → 12.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/.vscode/tasks.json +19 -1
  2. package/README.md +8 -9
  3. package/build/__tests__/{AbstractLslTest.d.ts → AbstractPackageTest.d.ts} +7 -6
  4. package/build/__tests__/AbstractPackageTest.js +53 -0
  5. package/build/__tests__/AbstractPackageTest.js.map +1 -0
  6. package/build/__tests__/{modules → impl}/LiblslAdapter.test.d.ts +6 -3
  7. package/build/__tests__/{modules → impl}/LiblslAdapter.test.js +193 -151
  8. package/build/__tests__/impl/LiblslAdapter.test.js.map +1 -0
  9. package/build/__tests__/{modules/EventMarkerOutlet.test.d.ts → impl/LslEventMarkerOutlet.test.d.ts} +5 -4
  10. package/build/__tests__/{modules/EventMarkerOutlet.test.js → impl/LslEventMarkerOutlet.test.js} +54 -52
  11. package/build/__tests__/impl/LslEventMarkerOutlet.test.js.map +1 -0
  12. package/build/__tests__/{modules → impl}/LslStreamInfo.test.d.ts +3 -3
  13. package/build/__tests__/{modules → impl}/LslStreamInfo.test.js +53 -59
  14. package/build/__tests__/impl/LslStreamInfo.test.js.map +1 -0
  15. package/build/__tests__/impl/LslStreamInlet.test.d.ts +11 -0
  16. package/build/__tests__/{modules → impl}/LslStreamInlet.test.js +28 -26
  17. package/build/__tests__/impl/LslStreamInlet.test.js.map +1 -0
  18. package/build/__tests__/{modules → impl}/LslStreamOutlet.test.d.ts +3 -3
  19. package/build/__tests__/{modules → impl}/LslStreamOutlet.test.js +56 -60
  20. package/build/__tests__/impl/LslStreamOutlet.test.js.map +1 -0
  21. package/build/__tests__/impl/LslWebSocketBridge.test.d.ts +7 -0
  22. package/build/__tests__/impl/LslWebSocketBridge.test.js +26 -0
  23. package/build/__tests__/impl/LslWebSocketBridge.test.js.map +1 -0
  24. package/build/assertions.d.ts +1 -1
  25. package/build/assertions.js +13 -20
  26. package/build/assertions.js.map +1 -1
  27. package/build/consts.js +2 -5
  28. package/build/consts.js.map +1 -1
  29. package/build/{modules → impl}/LiblslAdapter.d.ts +5 -4
  30. package/build/{modules → impl}/LiblslAdapter.js +60 -51
  31. package/build/impl/LiblslAdapter.js.map +1 -0
  32. package/build/impl/LslEventMarkerOutlet.d.ts +23 -0
  33. package/build/{modules/EventMarkerOutlet.js → impl/LslEventMarkerOutlet.js} +12 -14
  34. package/build/impl/LslEventMarkerOutlet.js.map +1 -0
  35. package/build/{modules → impl}/LslStreamInfo.d.ts +1 -1
  36. package/build/{modules → impl}/LslStreamInfo.js +19 -16
  37. package/build/impl/LslStreamInfo.js.map +1 -0
  38. package/build/impl/LslStreamInlet.d.ts +34 -0
  39. package/build/{modules → impl}/LslStreamInlet.js +19 -16
  40. package/build/impl/LslStreamInlet.js.map +1 -0
  41. package/build/{modules → impl}/LslStreamOutlet.d.ts +10 -10
  42. package/build/{modules → impl}/LslStreamOutlet.js +22 -23
  43. package/build/impl/LslStreamOutlet.js.map +1 -0
  44. package/build/impl/LslWebSocketBridge.d.ts +8 -0
  45. package/build/impl/LslWebSocketBridge.js +8 -0
  46. package/build/impl/LslWebSocketBridge.js.map +1 -0
  47. package/build/index.d.ts +34 -30
  48. package/build/index.js +39 -69
  49. package/build/index.js.map +1 -1
  50. package/build/scripts/{demoMarkerOutlet.js → runLslEventMarkerOutlet.js} +3 -8
  51. package/build/scripts/runLslEventMarkerOutlet.js.map +1 -0
  52. package/build/scripts/{demoStreamOutlet.js → runLslStreamOutlet.js} +3 -8
  53. package/build/scripts/runLslStreamOutlet.js.map +1 -0
  54. package/build/testDoubles/{MarkerOutlet/FakeMarkerOutlet.d.ts → EventMarkerOutlet/FakeEventMarkerOutlet.d.ts} +3 -3
  55. package/build/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.js +26 -0
  56. package/build/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.js.map +1 -0
  57. package/build/testDoubles/{MarkerOutlet/MockMarkerOutlet.d.ts → EventMarkerOutlet/MockEventMarkerOutlet.d.ts} +3 -3
  58. package/build/testDoubles/EventMarkerOutlet/MockEventMarkerOutlet.js +46 -0
  59. package/build/testDoubles/EventMarkerOutlet/MockEventMarkerOutlet.js.map +1 -0
  60. package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.d.ts +9 -0
  61. package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js +19 -0
  62. package/build/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.js.map +1 -0
  63. package/build/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.d.ts +10 -0
  64. package/build/testDoubles/{MarkerOutlet/ThrowingMarkerOutlet.js → EventMarkerOutlet/ThrowingEventMarkerOutlet.js} +3 -6
  65. package/build/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.js.map +1 -0
  66. package/build/testDoubles/Liblsl/FakeLiblsl.d.ts +4 -1
  67. package/build/testDoubles/Liblsl/FakeLiblsl.js +23 -15
  68. package/build/testDoubles/Liblsl/FakeLiblsl.js.map +1 -1
  69. package/build/testDoubles/StreamInfo/FakeStreamInfo.d.ts +2 -2
  70. package/build/testDoubles/StreamInfo/FakeStreamInfo.js +3 -6
  71. package/build/testDoubles/StreamInfo/FakeStreamInfo.js.map +1 -1
  72. package/build/testDoubles/StreamInfo/SpyStreamInfo.d.ts +2 -2
  73. package/build/testDoubles/StreamInfo/SpyStreamInfo.js +2 -8
  74. package/build/testDoubles/StreamInfo/SpyStreamInfo.js.map +1 -1
  75. package/build/testDoubles/StreamInlet/FakeStreamInlet.d.ts +12 -0
  76. package/build/testDoubles/StreamInlet/FakeStreamInlet.js +18 -0
  77. package/build/testDoubles/StreamInlet/FakeStreamInlet.js.map +1 -0
  78. package/build/testDoubles/StreamInlet/SpyStreamInlet.d.ts +8 -0
  79. package/build/testDoubles/StreamInlet/SpyStreamInlet.js +16 -0
  80. package/build/testDoubles/StreamInlet/SpyStreamInlet.js.map +1 -0
  81. package/build/testDoubles/{LslOutlet/FakeLslOutlet.d.ts → StreamOutlet/FakeStreamOutlet.d.ts} +10 -11
  82. package/build/testDoubles/StreamOutlet/FakeStreamOutlet.js +57 -0
  83. package/build/testDoubles/StreamOutlet/FakeStreamOutlet.js.map +1 -0
  84. package/build/testDoubles/StreamTransportBridge/FakeStreamTransportBridge.d.ts +6 -0
  85. package/build/testDoubles/StreamTransportBridge/FakeStreamTransportBridge.js +10 -0
  86. package/build/testDoubles/StreamTransportBridge/FakeStreamTransportBridge.js.map +1 -0
  87. package/build/testDoubles/consts.js +4 -7
  88. package/build/testDoubles/consts.js.map +1 -1
  89. package/build/testDoubles/generateRandomOutletOptions.d.ts +2 -2
  90. package/build/testDoubles/generateRandomOutletOptions.js +14 -17
  91. package/build/testDoubles/generateRandomOutletOptions.js.map +1 -1
  92. package/build/types.d.ts +9 -4
  93. package/build/types.js +1 -2
  94. package/build/validations.js +4 -10
  95. package/build/validations.js.map +1 -1
  96. package/package.json +22 -12
  97. package/src/__tests__/AbstractPackageTest.ts +65 -0
  98. package/src/__tests__/{modules → impl}/LiblslAdapter.test.ts +71 -44
  99. package/src/__tests__/{modules/EventMarkerOutlet.test.ts → impl/LslEventMarkerOutlet.test.ts} +40 -28
  100. package/src/__tests__/{modules → impl}/LslStreamInfo.test.ts +10 -8
  101. package/src/__tests__/{modules → impl}/LslStreamInlet.test.ts +27 -14
  102. package/src/__tests__/{modules → impl}/LslStreamOutlet.test.ts +24 -17
  103. package/src/__tests__/impl/LslWebSocketBridge.test.ts +25 -0
  104. package/src/assertions.ts +3 -3
  105. package/src/{modules → impl}/LiblslAdapter.ts +33 -21
  106. package/src/{modules/EventMarkerOutlet.ts → impl/LslEventMarkerOutlet.ts} +17 -12
  107. package/src/{modules → impl}/LslStreamInfo.ts +5 -4
  108. package/src/{modules → impl}/LslStreamInlet.ts +27 -16
  109. package/src/{modules → impl}/LslStreamOutlet.ts +19 -16
  110. package/src/impl/LslWebSocketBridge.ts +13 -0
  111. package/src/index.ts +43 -35
  112. package/src/scripts/{demoMarkerOutlet.ts → runLslEventMarkerOutlet.ts} +2 -2
  113. package/src/scripts/{demoStreamOutlet.ts → runLslStreamOutlet.ts} +1 -1
  114. package/src/testDoubles/{MarkerOutlet/FakeMarkerOutlet.ts → EventMarkerOutlet/FakeEventMarkerOutlet.ts} +7 -7
  115. package/src/testDoubles/{MarkerOutlet/MockMarkerOutlet.ts → EventMarkerOutlet/MockEventMarkerOutlet.ts} +5 -4
  116. package/src/testDoubles/EventMarkerOutlet/SpyEventMarkerOutlet.ts +24 -0
  117. package/src/testDoubles/{MarkerOutlet/ThrowingMarkerOutlet.ts → EventMarkerOutlet/ThrowingEventMarkerOutlet.ts} +3 -3
  118. package/src/testDoubles/Liblsl/FakeLiblsl.ts +9 -1
  119. package/src/testDoubles/StreamInfo/FakeStreamInfo.ts +2 -2
  120. package/src/testDoubles/StreamInfo/SpyStreamInfo.ts +1 -1
  121. package/src/testDoubles/StreamInlet/FakeStreamInlet.ts +27 -0
  122. package/src/testDoubles/StreamInlet/SpyStreamInlet.ts +22 -0
  123. package/src/testDoubles/{LslOutlet/FakeLslOutlet.ts → StreamOutlet/FakeStreamOutlet.ts} +22 -19
  124. package/src/testDoubles/StreamTransportBridge/FakeStreamTransportBridge.ts +15 -0
  125. package/src/testDoubles/generateRandomOutletOptions.ts +5 -4
  126. package/src/types.ts +11 -4
  127. package/tsconfig.json +17 -28
  128. package/build/__tests__/AbstractLslTest.js +0 -87
  129. package/build/__tests__/AbstractLslTest.js.map +0 -1
  130. package/build/__tests__/modules/EventMarkerOutlet.test.js.map +0 -1
  131. package/build/__tests__/modules/LiblslAdapter.test.js.map +0 -1
  132. package/build/__tests__/modules/LslStreamInfo.test.js.map +0 -1
  133. package/build/__tests__/modules/LslStreamInlet.test.d.ts +0 -10
  134. package/build/__tests__/modules/LslStreamInlet.test.js.map +0 -1
  135. package/build/__tests__/modules/LslStreamOutlet.test.js.map +0 -1
  136. package/build/modules/EventMarkerOutlet.d.ts +0 -23
  137. package/build/modules/EventMarkerOutlet.js.map +0 -1
  138. package/build/modules/LiblslAdapter.js.map +0 -1
  139. package/build/modules/LslStreamInfo.js.map +0 -1
  140. package/build/modules/LslStreamInlet.d.ts +0 -31
  141. package/build/modules/LslStreamInlet.js.map +0 -1
  142. package/build/modules/LslStreamOutlet.js.map +0 -1
  143. package/build/scripts/demoMarkerOutlet.js.map +0 -1
  144. package/build/scripts/demoStreamOutlet.js.map +0 -1
  145. package/build/testDoubles/LslInlet/FakeLslInlet.d.ts +0 -11
  146. package/build/testDoubles/LslInlet/FakeLslInlet.js +0 -16
  147. package/build/testDoubles/LslInlet/FakeLslInlet.js.map +0 -1
  148. package/build/testDoubles/LslInlet/SpyLslInlet.d.ts +0 -7
  149. package/build/testDoubles/LslInlet/SpyLslInlet.js +0 -20
  150. package/build/testDoubles/LslInlet/SpyLslInlet.js.map +0 -1
  151. package/build/testDoubles/LslOutlet/FakeLslOutlet.js +0 -59
  152. package/build/testDoubles/LslOutlet/FakeLslOutlet.js.map +0 -1
  153. package/build/testDoubles/MarkerOutlet/FakeMarkerOutlet.js +0 -29
  154. package/build/testDoubles/MarkerOutlet/FakeMarkerOutlet.js.map +0 -1
  155. package/build/testDoubles/MarkerOutlet/MockMarkerOutlet.js +0 -49
  156. package/build/testDoubles/MarkerOutlet/MockMarkerOutlet.js.map +0 -1
  157. package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.d.ts +0 -9
  158. package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.js +0 -24
  159. package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.js.map +0 -1
  160. package/build/testDoubles/MarkerOutlet/ThrowingMarkerOutlet.d.ts +0 -10
  161. package/build/testDoubles/MarkerOutlet/ThrowingMarkerOutlet.js.map +0 -1
  162. package/src/__tests__/AbstractLslTest.ts +0 -59
  163. package/src/testDoubles/LslInlet/FakeLslInlet.ts +0 -22
  164. package/src/testDoubles/LslInlet/SpyLslInlet.ts +0 -16
  165. package/src/testDoubles/MarkerOutlet/SpyMarkerOutlet.ts +0 -24
  166. /package/build/scripts/{demoMarkerOutlet.d.ts → runLslEventMarkerOutlet.d.ts} +0 -0
  167. /package/build/scripts/{demoStreamOutlet.d.ts → runLslStreamOutlet.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
- import { MarkerOutlet } from '../../modules/EventMarkerOutlet';
2
- import { DurationMarker } from '../../types';
3
- export default class FakeMarkerOutlet implements MarkerOutlet {
1
+ import { EventMarkerOutlet } from '../../impl/LslEventMarkerOutlet.js';
2
+ import { DurationMarker } from '../../types.js';
3
+ export default class FakeEventMarkerOutlet implements EventMarkerOutlet {
4
4
  static callsToPushMarker: string[];
5
5
  static callsToPushMarkers: DurationMarker[][];
6
6
  static numCallsToStop: number;
@@ -0,0 +1,26 @@
1
+ export default class FakeEventMarkerOutlet {
2
+ static callsToPushMarker = [];
3
+ static callsToPushMarkers = [];
4
+ static numCallsToStop = 0;
5
+ static numCallsToDestroy = 0;
6
+ constructor() { }
7
+ pushMarker(markerName) {
8
+ FakeEventMarkerOutlet.callsToPushMarker.push(markerName);
9
+ }
10
+ async pushMarkers(markers) {
11
+ FakeEventMarkerOutlet.callsToPushMarkers.push(markers);
12
+ }
13
+ stop() {
14
+ FakeEventMarkerOutlet.numCallsToStop++;
15
+ }
16
+ destroy() {
17
+ FakeEventMarkerOutlet.numCallsToDestroy++;
18
+ }
19
+ static resetTestDouble() {
20
+ this.callsToPushMarker = [];
21
+ this.callsToPushMarkers = [];
22
+ this.numCallsToStop = 0;
23
+ this.numCallsToDestroy = 0;
24
+ }
25
+ }
26
+ //# sourceMappingURL=FakeEventMarkerOutlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/FakeEventMarkerOutlet.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAC/B,MAAM,CAAC,iBAAiB,GAAa,EAAE,CAAA;IACvC,MAAM,CAAC,kBAAkB,GAAuB,EAAE,CAAA;IAClD,MAAM,CAAC,cAAc,GAAG,CAAC,CAAA;IACzB,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAEnC,gBAAsB,CAAC;IAEhB,UAAU,CAAC,UAAkB;QAChC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC5D,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAyB;QAC9C,qBAAqB,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC1D,CAAC;IAEM,IAAI;QACP,qBAAqB,CAAC,cAAc,EAAE,CAAA;IAC1C,CAAC;IAEM,OAAO;QACV,qBAAqB,CAAC,iBAAiB,EAAE,CAAA;IAC7C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAA;QAC3B,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAA;QACvB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC9B,CAAC"}
@@ -1,6 +1,6 @@
1
- import { MarkerOutlet } from '../../modules/EventMarkerOutlet';
2
- import { DurationMarker, LslSample } from '../../types';
3
- export default class MockMarkerOutlet implements MarkerOutlet {
1
+ import { EventMarkerOutlet } from '../../impl/LslEventMarkerOutlet.js';
2
+ import { DurationMarker, LslSample } from '../../types.js';
3
+ export default class MockEventMarkerOutlet implements EventMarkerOutlet {
4
4
  private didPushMarkers;
5
5
  private pushedMarkers?;
6
6
  private didPushSamples;
@@ -0,0 +1,46 @@
1
+ import { assert } from '@neurodevs/node-tdd';
2
+ export default class MockEventMarkerOutlet {
3
+ didPushMarkers = false;
4
+ pushedMarkers;
5
+ didPushSamples = false;
6
+ pushedSamples;
7
+ stop() {
8
+ throw new Error('Method not implemented.');
9
+ }
10
+ destroy() {
11
+ throw new Error('Method not implemented.');
12
+ }
13
+ pushMarker(_markerName) {
14
+ throw new Error('Method not implemented.');
15
+ }
16
+ pushSample(sample) {
17
+ if (!this.didPushSamples) {
18
+ this.didPushSamples = true;
19
+ this.pushedSamples = [];
20
+ }
21
+ this.pushedSamples?.push(sample);
22
+ }
23
+ async pushMarkers(markers) {
24
+ this.didPushMarkers = true;
25
+ this.pushedMarkers = markers;
26
+ }
27
+ assertDidPushSamples(samples) {
28
+ assert.isTrue(this.didPushSamples, `Expected to have pushed samples but didn't. Try 'outlet.pushSample(...)'`);
29
+ if (samples) {
30
+ assert.isEqualDeep(this.pushedSamples, samples);
31
+ }
32
+ }
33
+ assertDidNotPushSamples() {
34
+ assert.isFalse(this.didPushSamples, `Expected to NOT have pushed samples but did. Try 'outlet.pushSample(...)'`);
35
+ }
36
+ assertDidPushMarkers(markers) {
37
+ assert.isTrue(this.didPushMarkers, `Expected to have pushed markers but didn't. Try 'outlet.pushMarkers(...)'`);
38
+ if (markers) {
39
+ assert.isEqualDeep(this.pushedMarkers, markers);
40
+ }
41
+ }
42
+ assertDidNotPushMarkers() {
43
+ assert.isFalse(this.didPushMarkers, `Expected to NOT have pushed markers but did. Try 'outlet.pushMarkers(...)'`);
44
+ }
45
+ }
46
+ //# sourceMappingURL=MockEventMarkerOutlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/MockEventMarkerOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAK5C,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAC9B,cAAc,GAAG,KAAK,CAAA;IACtB,aAAa,CAAmB;IAChC,cAAc,GAAG,KAAK,CAAA;IACtB,aAAa,CAAc;IAE5B,IAAI;QACP,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC9C,CAAC;IAEM,OAAO;QACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC9C,CAAC;IAEM,UAAU,CAAC,WAAmB;QACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC9C,CAAC;IAEM,UAAU,CAAC,MAAiB;QAC/B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;YAC1B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;QAC3B,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAyB;QAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAC1B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAA;IAChC,CAAC;IAEM,oBAAoB,CAAC,OAAqB;QAC7C,MAAM,CAAC,MAAM,CACT,IAAI,CAAC,cAAc,EACnB,0EAA0E,CAC7E,CAAA;QAED,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC;IACL,CAAC;IAEM,uBAAuB;QAC1B,MAAM,CAAC,OAAO,CACV,IAAI,CAAC,cAAc,EACnB,2EAA2E,CAC9E,CAAA;IACL,CAAC;IAEM,oBAAoB,CAAC,OAA0B;QAClD,MAAM,CAAC,MAAM,CACT,IAAI,CAAC,cAAc,EACnB,2EAA2E,CAC9E,CAAA;QAED,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC;IACL,CAAC;IAEM,uBAAuB;QAC1B,MAAM,CAAC,OAAO,CACV,IAAI,CAAC,cAAc,EACnB,4EAA4E,CAC/E,CAAA;IACL,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import LslEventMarkerOutlet from '../../impl/LslEventMarkerOutlet.js';
2
+ import { StreamOutlet } from '../../impl/LslStreamOutlet.js';
3
+ export default class SpyEventMarkerOutlet extends LslEventMarkerOutlet {
4
+ totalWaitTimeMs: number;
5
+ constructor(outlet: StreamOutlet);
6
+ wait(durationMs: number): Promise<void>;
7
+ getStreamOutlet(): StreamOutlet;
8
+ resetTestDouble(): void;
9
+ }
@@ -0,0 +1,19 @@
1
+ import LslEventMarkerOutlet from '../../impl/LslEventMarkerOutlet.js';
2
+ export default class SpyEventMarkerOutlet extends LslEventMarkerOutlet {
3
+ totalWaitTimeMs;
4
+ constructor(outlet) {
5
+ super(outlet);
6
+ this.totalWaitTimeMs = 0;
7
+ }
8
+ async wait(durationMs) {
9
+ this.totalWaitTimeMs += durationMs;
10
+ return Promise.resolve();
11
+ }
12
+ getStreamOutlet() {
13
+ return this.outlet;
14
+ }
15
+ resetTestDouble() {
16
+ this.totalWaitTimeMs = 0;
17
+ }
18
+ }
19
+ //# 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,eAAe,CAAQ;IAE9B,YAAmB,MAAoB;QACnC,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,eAAe,GAAG,CAAC,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,UAAkB;QAChC,IAAI,CAAC,eAAe,IAAI,UAAU,CAAA;QAClC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC5B,CAAC;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAEM,eAAe;QAClB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAA;IAC5B,CAAC;CACJ"}
@@ -0,0 +1,10 @@
1
+ import { EventMarkerOutlet } from '../../impl/LslEventMarkerOutlet.js';
2
+ import { DurationMarker } from '../../types.js';
3
+ export default class ThrowingEventMarkerOutlet implements EventMarkerOutlet {
4
+ private errorMsg;
5
+ constructor();
6
+ pushMarker(_markerName: string): Promise<void>;
7
+ pushMarkers(_markers: DurationMarker[]): Promise<void>;
8
+ stop(): void;
9
+ destroy(): void;
10
+ }
@@ -1,8 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class ThrowingMarkerOutlet {
1
+ export default class ThrowingEventMarkerOutlet {
2
+ errorMsg = 'Intentional throwing: ';
4
3
  constructor() {
5
- this.errorMsg = 'Intentional throwing: ';
6
4
  throw new Error(this.errorMsg + 'constructor');
7
5
  }
8
6
  async pushMarker(_markerName) {
@@ -18,5 +16,4 @@ class ThrowingMarkerOutlet {
18
16
  throw new Error(this.errorMsg + 'destroy');
19
17
  }
20
18
  }
21
- exports.default = ThrowingMarkerOutlet;
22
- //# sourceMappingURL=ThrowingMarkerOutlet.js.map
19
+ //# sourceMappingURL=ThrowingEventMarkerOutlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThrowingEventMarkerOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/EventMarkerOutlet/ThrowingEventMarkerOutlet.ts"],"names":[],"mappings":"AAGA,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,UAAU,CAAC,WAAmB;QACvC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAA;IACjD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAA0B;QAC/C,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAA;IAClD,CAAC;IAEM,IAAI;QACP,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAA;IAC3C,CAAC;IAEM,OAAO;QACV,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAA;IAC9C,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- import { BoundOutlet, BoundStreamInfo, CreateStreamInfoOptions, AppendChannelsToStreamInfoOptions, CreateOutletOptions, PushSampleFloatTimestampOptions, PushSampleStringTimestampOptions, Liblsl, CreateInletOptions, DestroyInletOptions, BoundInlet } from '../../types';
1
+ import { BoundOutlet, BoundStreamInfo, CreateStreamInfoOptions, AppendChannelsToStreamInfoOptions, CreateOutletOptions, PushSampleFloatTimestampOptions, PushSampleStringTimestampOptions, Liblsl, CreateInletOptions, DestroyInletOptions, BoundInlet, FlushInletOptions } from '../../types.js';
2
2
  export default class FakeLiblsl implements Liblsl {
3
3
  outlet: BoundOutlet;
4
4
  streamInfo: BoundStreamInfo;
@@ -8,11 +8,13 @@ export default class FakeLiblsl implements Liblsl {
8
8
  lastPushSampleFloatTimestampOptions?: PushSampleFloatTimestampOptions;
9
9
  lastPushSampleStringTimestampOptions?: PushSampleStringTimestampOptions;
10
10
  lastCreateInletOptions?: CreateInletOptions;
11
+ lastFlushInletOptions?: FlushInletOptions;
11
12
  lastDestroyInletOptions?: DestroyInletOptions;
12
13
  createStreamInfoHitCount: number;
13
14
  createOutletHitCount: number;
14
15
  destroyOutletHitCount: number;
15
16
  createInletHitCount: number;
17
+ flushInletHitCount: number;
16
18
  destroyInletHitCount: number;
17
19
  localClockHitCount: number;
18
20
  pushSampleStringTimestampHitCount: number;
@@ -23,6 +25,7 @@ export default class FakeLiblsl implements Liblsl {
23
25
  createOutlet(options: CreateOutletOptions): BoundOutlet;
24
26
  destroyOutlet(): void;
25
27
  createInlet(options: CreateInletOptions): BoundInlet;
28
+ flushInlet(options: FlushInletOptions): void;
26
29
  destroyInlet(options: DestroyInletOptions): void;
27
30
  localClock(): number;
28
31
  resetTestDouble(): void;
@@ -1,17 +1,22 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class FakeLiblsl {
4
- constructor() {
5
- this.outlet = {};
6
- this.streamInfo = {};
7
- this.createStreamInfoHitCount = 0;
8
- this.createOutletHitCount = 0;
9
- this.destroyOutletHitCount = 0;
10
- this.createInletHitCount = 0;
11
- this.destroyInletHitCount = 0;
12
- this.localClockHitCount = 0;
13
- this.pushSampleStringTimestampHitCount = 0;
14
- }
1
+ export default class FakeLiblsl {
2
+ outlet = {};
3
+ streamInfo = {};
4
+ lastCreateStreamInfoOptions;
5
+ lastAppendChannelsToStreamInfoOptions;
6
+ lastCreateOutletOptions;
7
+ lastPushSampleFloatTimestampOptions;
8
+ lastPushSampleStringTimestampOptions;
9
+ lastCreateInletOptions;
10
+ lastFlushInletOptions;
11
+ lastDestroyInletOptions;
12
+ createStreamInfoHitCount = 0;
13
+ createOutletHitCount = 0;
14
+ destroyOutletHitCount = 0;
15
+ createInletHitCount = 0;
16
+ flushInletHitCount = 0;
17
+ destroyInletHitCount = 0;
18
+ localClockHitCount = 0;
19
+ pushSampleStringTimestampHitCount = 0;
15
20
  createStreamInfo(options) {
16
21
  this.createStreamInfoHitCount++;
17
22
  this.lastCreateStreamInfoOptions = options;
@@ -40,6 +45,10 @@ class FakeLiblsl {
40
45
  this.lastCreateInletOptions = options;
41
46
  return {};
42
47
  }
48
+ flushInlet(options) {
49
+ this.flushInletHitCount++;
50
+ this.lastFlushInletOptions = options;
51
+ }
43
52
  destroyInlet(options) {
44
53
  this.destroyInletHitCount++;
45
54
  this.lastDestroyInletOptions = options;
@@ -60,5 +69,4 @@ class FakeLiblsl {
60
69
  this.pushSampleStringTimestampHitCount = 0;
61
70
  }
62
71
  }
63
- exports.default = FakeLiblsl;
64
72
  //# sourceMappingURL=FakeLiblsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FakeLiblsl.js","sourceRoot":"","sources":["../../../src/testDoubles/Liblsl/FakeLiblsl.ts"],"names":[],"mappings":";;AAcA,MAAqB,UAAU;IAA/B;QACW,WAAM,GAAgB,EAAiB,CAAA;QACvC,eAAU,GAAoB,EAAqB,CAAA;QAUnD,6BAAwB,GAAG,CAAC,CAAA;QAC5B,yBAAoB,GAAG,CAAC,CAAA;QACxB,0BAAqB,GAAG,CAAC,CAAA;QACzB,wBAAmB,GAAG,CAAC,CAAA;QACvB,yBAAoB,GAAG,CAAC,CAAA;QACxB,uBAAkB,GAAG,CAAC,CAAA;QACtB,sCAAiC,GAAG,CAAC,CAAA;IA+DhD,CAAC;IA7DU,gBAAgB,CAAC,OAAgC;QACpD,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC/B,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAA;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,0BAA0B,CAC7B,OAA0C;QAE1C,IAAI,CAAC,qCAAqC,GAAG,OAAO,CAAA;IACxD,CAAC;IAEM,wBAAwB,CAAC,OAAwC;QACpE,IAAI,CAAC,mCAAmC,GAAG,OAAO,CAAA;IACtD,CAAC;IAEM,yBAAyB,CAC5B,OAAyC;QAEzC,IAAI,CAAC,oCAAoC,GAAG,OAAO,CAAA;QACnD,IAAI,CAAC,iCAAiC,EAAE,CAAA;IAC5C,CAAC;IAEM,YAAY,CAAC,OAA4B;QAC5C,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC3B,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAA;QACtC,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAEM,aAAa;QAChB,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAChC,CAAC;IAEM,WAAW,CAAC,OAA2B;QAC1C,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC1B,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAA;QACrC,OAAO,EAAgB,CAAA;IAC3B,CAAC;IAEM,YAAY,CAAC,OAA4B;QAC5C,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC3B,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAA;IAC1C,CAAC;IAEM,UAAU;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;IAC/B,CAAC;IAEM,eAAe;QAClB,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAA;QAC5C,IAAI,CAAC,qCAAqC,GAAG,SAAS,CAAA;QACtD,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAA;QACxC,IAAI,CAAC,mCAAmC,GAAG,SAAS,CAAA;QACpD,IAAI,CAAC,oCAAoC,GAAG,SAAS,CAAA;QAErD,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAA;QACjC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,iCAAiC,GAAG,CAAC,CAAA;IAC9C,CAAC;CACJ;AAjFD,6BAiFC"}
1
+ {"version":3,"file":"FakeLiblsl.js","sourceRoot":"","sources":["../../../src/testDoubles/Liblsl/FakeLiblsl.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,OAAO,OAAO,UAAU;IACpB,MAAM,GAAgB,EAAiB,CAAA;IACvC,UAAU,GAAoB,EAAqB,CAAA;IAEnD,2BAA2B,CAA0B;IACrD,qCAAqC,CAAoC;IACzE,uBAAuB,CAAsB;IAC7C,mCAAmC,CAAkC;IACrE,oCAAoC,CAAmC;IACvE,sBAAsB,CAAqB;IAC3C,qBAAqB,CAAoB;IACzC,uBAAuB,CAAsB;IAE7C,wBAAwB,GAAG,CAAC,CAAA;IAC5B,oBAAoB,GAAG,CAAC,CAAA;IACxB,qBAAqB,GAAG,CAAC,CAAA;IACzB,mBAAmB,GAAG,CAAC,CAAA;IACvB,kBAAkB,GAAG,CAAC,CAAA;IACtB,oBAAoB,GAAG,CAAC,CAAA;IACxB,kBAAkB,GAAG,CAAC,CAAA;IACtB,iCAAiC,GAAG,CAAC,CAAA;IAErC,gBAAgB,CAAC,OAAgC;QACpD,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAC/B,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAA;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,0BAA0B,CAC7B,OAA0C;QAE1C,IAAI,CAAC,qCAAqC,GAAG,OAAO,CAAA;IACxD,CAAC;IAEM,wBAAwB,CAAC,OAAwC;QACpE,IAAI,CAAC,mCAAmC,GAAG,OAAO,CAAA;IACtD,CAAC;IAEM,yBAAyB,CAC5B,OAAyC;QAEzC,IAAI,CAAC,oCAAoC,GAAG,OAAO,CAAA;QACnD,IAAI,CAAC,iCAAiC,EAAE,CAAA;IAC5C,CAAC;IAEM,YAAY,CAAC,OAA4B;QAC5C,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC3B,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAA;QACtC,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAEM,aAAa;QAChB,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAChC,CAAC;IAEM,WAAW,CAAC,OAA2B;QAC1C,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC1B,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAA;QACrC,OAAO,EAAgB,CAAA;IAC3B,CAAC;IAEM,UAAU,CAAC,OAA0B;QACxC,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAA;IACxC,CAAC;IAEM,YAAY,CAAC,OAA4B;QAC5C,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC3B,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAA;IAC1C,CAAC;IAEM,UAAU;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;IAC/B,CAAC;IAEM,eAAe;QAClB,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAA;QAC5C,IAAI,CAAC,qCAAqC,GAAG,SAAS,CAAA;QACtD,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAA;QACxC,IAAI,CAAC,mCAAmC,GAAG,SAAS,CAAA;QACpD,IAAI,CAAC,oCAAoC,GAAG,SAAS,CAAA;QAErD,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAA;QACjC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,iCAAiC,GAAG,CAAC,CAAA;IAC9C,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
- import { StreamInfo, StreamInfoOptions } from '../../modules/LslStreamInfo';
2
- import { BoundStreamInfo } from '../../types';
1
+ import { StreamInfo, StreamInfoOptions } from '../../impl/LslStreamInfo.js';
2
+ import { BoundStreamInfo } from '../../types.js';
3
3
  export default class FakeStreamInfo implements StreamInfo {
4
4
  static callsToConstructor: StreamInfoOptions[];
5
5
  static boundStreamInfo: BoundStreamInfo;
@@ -1,6 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class FakeStreamInfo {
1
+ export default class FakeStreamInfo {
2
+ static callsToConstructor = [];
3
+ static boundStreamInfo = {};
4
4
  constructor(options) {
5
5
  FakeStreamInfo.callsToConstructor.push(options);
6
6
  }
@@ -11,7 +11,4 @@ class FakeStreamInfo {
11
11
  FakeStreamInfo.callsToConstructor = [];
12
12
  }
13
13
  }
14
- FakeStreamInfo.callsToConstructor = [];
15
- FakeStreamInfo.boundStreamInfo = {};
16
- exports.default = FakeStreamInfo;
17
14
  //# sourceMappingURL=FakeStreamInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FakeStreamInfo.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInfo/FakeStreamInfo.ts"],"names":[],"mappings":";;AAGA,MAAqB,cAAc;IAI/B,YAAmB,OAA0B;QACzC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,cAAc,CAAC,eAAe,CAAA;IACzC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,cAAc,CAAC,kBAAkB,GAAG,EAAE,CAAA;IAC1C,CAAC;;AAba,iCAAkB,GAAwB,EAAE,CAAA;AAC5C,8BAAe,GAAG,EAAqB,CAAA;kBAFpC,cAAc"}
1
+ {"version":3,"file":"FakeStreamInfo.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInfo/FakeStreamInfo.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,OAAO,cAAc;IACxB,MAAM,CAAC,kBAAkB,GAAwB,EAAE,CAAA;IACnD,MAAM,CAAC,eAAe,GAAG,EAAqB,CAAA;IAErD,YAAmB,OAA0B;QACzC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,cAAc,CAAC,eAAe,CAAA;IACzC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,cAAc,CAAC,kBAAkB,GAAG,EAAE,CAAA;IAC1C,CAAC"}
@@ -1,7 +1,7 @@
1
- import LslStreamInfo, { StreamInfoOptions } from '../../modules/LslStreamInfo';
1
+ import LslStreamInfo, { StreamInfoOptions } from '../../impl/LslStreamInfo.js';
2
2
  export default class SpyStreamInfo extends LslStreamInfo {
3
3
  constructor(options: StreamInfoOptions);
4
- getStreamInfo(): import("../..").BoundStreamInfo;
4
+ getStreamInfo(): import("../../types.js").BoundStreamInfo;
5
5
  getName(): string;
6
6
  getType(): string;
7
7
  getSourceId(): string;
@@ -1,10 +1,5 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const LslStreamInfo_1 = __importDefault(require("../../modules/LslStreamInfo"));
7
- class SpyStreamInfo extends LslStreamInfo_1.default {
1
+ import LslStreamInfo from '../../impl/LslStreamInfo.js';
2
+ export default class SpyStreamInfo extends LslStreamInfo {
8
3
  constructor(options) {
9
4
  super(options);
10
5
  }
@@ -24,5 +19,4 @@ class SpyStreamInfo extends LslStreamInfo_1.default {
24
19
  return this.units;
25
20
  }
26
21
  }
27
- exports.default = SpyStreamInfo;
28
22
  //# sourceMappingURL=SpyStreamInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpyStreamInfo.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInfo/SpyStreamInfo.ts"],"names":[],"mappings":";;;;;AAAA,gFAA8E;AAE9E,MAAqB,aAAc,SAAQ,uBAAa;IACpD,YAAmB,OAA0B;QACzC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;CACJ;AAxBD,gCAwBC"}
1
+ {"version":3,"file":"SpyStreamInfo.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInfo/SpyStreamInfo.ts"],"names":[],"mappings":"AAAA,OAAO,aAAoC,MAAM,6BAA6B,CAAA;AAE9E,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,aAAa;IACpD,YAAmB,OAA0B;QACzC,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;CACJ"}
@@ -0,0 +1,12 @@
1
+ import { StreamInfo } from '../../impl/LslStreamInfo.js';
2
+ import { StreamInlet, StreamInletOptions } from '../../impl/LslStreamInlet.js';
3
+ export default class FakeStreamInlet implements StreamInlet {
4
+ static callsToConstructor: {
5
+ info?: StreamInfo;
6
+ options?: StreamInletOptions;
7
+ }[];
8
+ static numCallsToFlushSamples: number;
9
+ constructor(info?: StreamInfo, options?: StreamInletOptions);
10
+ flushSamples(): void;
11
+ static resetTestDouble(): void;
12
+ }
@@ -0,0 +1,18 @@
1
+ export default class FakeStreamInlet {
2
+ static callsToConstructor = [];
3
+ static numCallsToFlushSamples = 0;
4
+ constructor(info, options) {
5
+ FakeStreamInlet.callsToConstructor.push({
6
+ info,
7
+ options,
8
+ });
9
+ }
10
+ flushSamples() {
11
+ FakeStreamInlet.numCallsToFlushSamples++;
12
+ }
13
+ static resetTestDouble() {
14
+ FakeStreamInlet.callsToConstructor = [];
15
+ FakeStreamInlet.numCallsToFlushSamples = 0;
16
+ }
17
+ }
18
+ //# sourceMappingURL=FakeStreamInlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeStreamInlet.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInlet/FakeStreamInlet.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,OAAO,eAAe;IACzB,MAAM,CAAC,kBAAkB,GAG1B,EAAE,CAAA;IAED,MAAM,CAAC,sBAAsB,GAAG,CAAC,CAAA;IAExC,YAAmB,IAAiB,EAAE,OAA4B;QAC9D,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC;YACpC,IAAI;YACJ,OAAO;SACV,CAAC,CAAA;IACN,CAAC;IAEM,YAAY;QACf,eAAe,CAAC,sBAAsB,EAAE,CAAA;IAC5C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,eAAe,CAAC,kBAAkB,GAAG,EAAE,CAAA;QACvC,eAAe,CAAC,sBAAsB,GAAG,CAAC,CAAA;IAC9C,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { StreamInfo } from '../../impl/LslStreamInfo.js';
2
+ import LslStreamInlet, { StreamInletOptions } from '../../impl/LslStreamInlet.js';
3
+ export declare class SpyStreamInlet extends LslStreamInlet {
4
+ constructor(info: StreamInfo, options: StreamInletOptions);
5
+ getName(): string;
6
+ getStreamInfo(): StreamInfo;
7
+ getBoundInlet(): import("../../types.js").BoundInlet;
8
+ }
@@ -0,0 +1,16 @@
1
+ import LslStreamInlet from '../../impl/LslStreamInlet.js';
2
+ export class SpyStreamInlet extends LslStreamInlet {
3
+ constructor(info, options) {
4
+ super(info, options);
5
+ }
6
+ getName() {
7
+ return this.name;
8
+ }
9
+ getStreamInfo() {
10
+ return this.info;
11
+ }
12
+ getBoundInlet() {
13
+ return this.inlet;
14
+ }
15
+ }
16
+ //# sourceMappingURL=SpyStreamInlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpyStreamInlet.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamInlet/SpyStreamInlet.ts"],"names":[],"mappings":"AACA,OAAO,cAEN,MAAM,8BAA8B,CAAA;AAErC,MAAM,OAAO,cAAe,SAAQ,cAAc;IAC9C,YAAmB,IAAgB,EAAE,OAA2B;QAC5D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACxB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,IAAI,CAAA;IACpB,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;CACJ"}
@@ -1,12 +1,15 @@
1
- import { StreamInfo } from '../../modules/LslStreamInfo';
2
- import { LslOutlet, LslOutletOptions } from '../../modules/LslStreamOutlet';
3
- import { LslSample } from '../../types';
4
- export default class FakeLslOutlet implements LslOutlet {
5
- static callsToConstructor: CallToOutletConstructor[];
1
+ import { StreamInfo } from '../../impl/LslStreamInfo.js';
2
+ import { StreamOutlet, StreamOutletOptions } from '../../impl/LslStreamOutlet.js';
3
+ import { LslSample } from '../../types.js';
4
+ export default class FakeStreamOutlet implements StreamOutlet {
5
+ static callsToConstructor: {
6
+ info?: StreamInfo;
7
+ options?: StreamOutletOptions;
8
+ }[];
6
9
  static callsToPushSample: LslSample[];
7
10
  static numCallsToDestroy: number;
8
- options?: LslOutletOptions;
9
- constructor(info?: StreamInfo, options?: LslOutletOptions);
11
+ options?: StreamOutletOptions;
12
+ constructor(info?: StreamInfo, options?: StreamOutletOptions);
10
13
  destroy(): void;
11
14
  pushSample(sample: LslSample): void;
12
15
  get name(): string;
@@ -22,7 +25,3 @@ export default class FakeLslOutlet implements LslOutlet {
22
25
  get unit(): string;
23
26
  static resetTestDouble(): void;
24
27
  }
25
- export interface CallToOutletConstructor {
26
- info?: StreamInfo;
27
- options?: LslOutletOptions;
28
- }
@@ -0,0 +1,57 @@
1
+ import { randomInt } from 'crypto';
2
+ import generateId from '@neurodevs/generate-id';
3
+ export default class FakeStreamOutlet {
4
+ static callsToConstructor = [];
5
+ static callsToPushSample = [];
6
+ static numCallsToDestroy = 0;
7
+ options;
8
+ constructor(info, options) {
9
+ FakeStreamOutlet.callsToConstructor.push({ info, options });
10
+ this.options = options;
11
+ }
12
+ destroy() {
13
+ FakeStreamOutlet.numCallsToDestroy++;
14
+ }
15
+ pushSample(sample) {
16
+ FakeStreamOutlet.callsToPushSample.push(sample);
17
+ }
18
+ get name() {
19
+ return this.options?.name ?? generateId();
20
+ }
21
+ get type() {
22
+ return this.options?.type ?? generateId();
23
+ }
24
+ get sourceId() {
25
+ return this.options?.sourceId ?? generateId();
26
+ }
27
+ get channelNames() {
28
+ return this.options?.channelNames ?? [generateId()];
29
+ }
30
+ get channelCount() {
31
+ return this.channelNames.length;
32
+ }
33
+ get channelFormat() {
34
+ return this.options?.channelFormat ?? 'float32';
35
+ }
36
+ get sampleRate() {
37
+ return this.options?.sampleRate ?? randomInt(1, 1000);
38
+ }
39
+ get chunkSize() {
40
+ return this.options?.chunkSize ?? randomInt(1, 1000);
41
+ }
42
+ get maxBuffered() {
43
+ return this.options?.maxBuffered ?? randomInt(1, 1000);
44
+ }
45
+ get manufacturer() {
46
+ return this.options?.manufacturer ?? generateId();
47
+ }
48
+ get unit() {
49
+ return this.options?.unit ?? generateId();
50
+ }
51
+ static resetTestDouble() {
52
+ FakeStreamOutlet.callsToConstructor = [];
53
+ FakeStreamOutlet.callsToPushSample = [];
54
+ FakeStreamOutlet.numCallsToDestroy = 0;
55
+ }
56
+ }
57
+ //# sourceMappingURL=FakeStreamOutlet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeStreamOutlet.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamOutlet/FakeStreamOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAS/C,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAC1B,MAAM,CAAC,kBAAkB,GAG1B,EAAE,CAAA;IAED,MAAM,CAAC,iBAAiB,GAAgB,EAAE,CAAA;IAC1C,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAE5B,OAAO,CAAsB;IAEpC,YAAmB,IAAiB,EAAE,OAA6B;QAC/D,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAEM,OAAO;QACV,gBAAgB,CAAC,iBAAiB,EAAE,CAAA;IACxC,CAAC;IAEM,UAAU,CAAC,MAAiB;QAC/B,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACnD,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,UAAU;QACjB,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACzD,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,UAAU,EAAE,CAAA;IACrD,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,CAAA;IAC7C,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,gBAAgB,CAAC,kBAAkB,GAAG,EAAE,CAAA;QACxC,gBAAgB,CAAC,iBAAiB,GAAG,EAAE,CAAA;QACvC,gBAAgB,CAAC,iBAAiB,GAAG,CAAC,CAAA;IAC1C,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { StreamTransportBridge } from '../../impl/LslWebSocketBridge.js';
2
+ export default class FakeStreamTransportBridge implements StreamTransportBridge {
3
+ static numCallsToConstructor: number;
4
+ constructor();
5
+ static resetTestDouble(): void;
6
+ }
@@ -0,0 +1,10 @@
1
+ export default class FakeStreamTransportBridge {
2
+ static numCallsToConstructor = 0;
3
+ constructor() {
4
+ FakeStreamTransportBridge.numCallsToConstructor++;
5
+ }
6
+ static resetTestDouble() {
7
+ FakeStreamTransportBridge.numCallsToConstructor = 0;
8
+ }
9
+ }
10
+ //# sourceMappingURL=FakeStreamTransportBridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeStreamTransportBridge.js","sourceRoot":"","sources":["../../../src/testDoubles/StreamTransportBridge/FakeStreamTransportBridge.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,yBAAyB;IAGnC,MAAM,CAAC,qBAAqB,GAAG,CAAC,CAAA;IAEvC;QACI,yBAAyB,CAAC,qBAAqB,EAAE,CAAA;IACrD,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,yBAAyB,CAAC,qBAAqB,GAAG,CAAC,CAAA;IACvD,CAAC"}
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TEST_CHANNEL_FORMATS_MAP = exports.TEST_CHANNEL_FORMATS = exports.TEST_UNSUPPORTED_CHANNEL_FORMATS = exports.TEST_SUPPORTED_CHANNEL_FORMATS = void 0;
4
- exports.TEST_SUPPORTED_CHANNEL_FORMATS = ['float32', 'string'];
5
- exports.TEST_UNSUPPORTED_CHANNEL_FORMATS = [
1
+ export const TEST_SUPPORTED_CHANNEL_FORMATS = ['float32', 'string'];
2
+ export const TEST_UNSUPPORTED_CHANNEL_FORMATS = [
6
3
  'undefined',
7
4
  'double64',
8
5
  'int32',
@@ -10,7 +7,7 @@ exports.TEST_UNSUPPORTED_CHANNEL_FORMATS = [
10
7
  'int8',
11
8
  'int64',
12
9
  ];
13
- exports.TEST_CHANNEL_FORMATS = [
10
+ export const TEST_CHANNEL_FORMATS = [
14
11
  'undefined',
15
12
  'float32',
16
13
  'double64',
@@ -20,7 +17,7 @@ exports.TEST_CHANNEL_FORMATS = [
20
17
  'int8',
21
18
  'int64',
22
19
  ];
23
- exports.TEST_CHANNEL_FORMATS_MAP = {
20
+ export const TEST_CHANNEL_FORMATS_MAP = {
24
21
  undefined: 0,
25
22
  float32: 1,
26
23
  double64: 2,
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/testDoubles/consts.ts"],"names":[],"mappings":";;;AAAa,QAAA,8BAA8B,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAU,CAAA;AAE/D,QAAA,gCAAgC,GAAG;IAC5C,WAAW;IACX,UAAU;IACV,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;CACD,CAAA;AAEG,QAAA,oBAAoB,GAAG;IAChC,WAAW;IACX,SAAS;IACT,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;CACD,CAAA;AAEG,QAAA,wBAAwB,GAAG;IACpC,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACX,CAAA"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/testDoubles/consts.ts"],"names":[],"mappings":"AAAA,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;AAEV,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,WAAW;IACX,SAAS;IACT,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;CACD,CAAA;AAEV,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACpC,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACX,CAAA"}
@@ -1,2 +1,2 @@
1
- import { LslOutletOptions } from '../modules/LslStreamOutlet';
2
- export default function generateRandomOutletOptions(): LslOutletOptions;
1
+ import { StreamOutletOptions } from '../impl/LslStreamOutlet.js';
2
+ export default function generateRandomOutletOptions(): StreamOutletOptions;
@@ -1,22 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = generateRandomOutletOptions;
4
- const crypto_1 = require("crypto");
5
- const test_utils_1 = require("@sprucelabs/test-utils");
6
- const consts_1 = require("./consts");
7
- function generateRandomOutletOptions() {
8
- const randomChannelIdx = (0, crypto_1.randomInt)(consts_1.TEST_SUPPORTED_CHANNEL_FORMATS.length);
1
+ import { randomInt } from 'crypto';
2
+ import generateId from '@neurodevs/generate-id';
3
+ import { TEST_SUPPORTED_CHANNEL_FORMATS } from './consts.js';
4
+ export default function generateRandomOutletOptions() {
5
+ const randomChannelIdx = randomInt(TEST_SUPPORTED_CHANNEL_FORMATS.length);
9
6
  return {
10
- name: (0, test_utils_1.generateId)(),
11
- type: (0, test_utils_1.generateId)(),
12
- channelNames: new Array((0, crypto_1.randomInt)(1, 10)).fill((0, test_utils_1.generateId)()),
7
+ name: generateId(),
8
+ type: generateId(),
9
+ channelNames: new Array(randomInt(1, 10)).fill(generateId()),
13
10
  sampleRate: Math.random() * 10,
14
- channelFormat: consts_1.TEST_SUPPORTED_CHANNEL_FORMATS[randomChannelIdx],
15
- sourceId: (0, test_utils_1.generateId)(),
16
- manufacturer: (0, test_utils_1.generateId)(),
17
- unit: (0, test_utils_1.generateId)(),
18
- chunkSize: (0, crypto_1.randomInt)(0, 10),
19
- maxBuffered: (0, crypto_1.randomInt)(0, 10),
11
+ channelFormat: TEST_SUPPORTED_CHANNEL_FORMATS[randomChannelIdx],
12
+ sourceId: generateId(),
13
+ manufacturer: generateId(),
14
+ unit: generateId(),
15
+ chunkSize: randomInt(0, 10),
16
+ maxBuffered: randomInt(0, 10),
20
17
  };
21
18
  }
22
19
  //# sourceMappingURL=generateRandomOutletOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateRandomOutletOptions.js","sourceRoot":"","sources":["../../src/testDoubles/generateRandomOutletOptions.ts"],"names":[],"mappings":";;AAKA,8CAeC;AApBD,mCAAkC;AAClC,uDAAmD;AAEnD,qCAAyD;AAEzD,SAAwB,2BAA2B;IAC/C,MAAM,gBAAgB,GAAG,IAAA,kBAAS,EAAC,uCAA8B,CAAC,MAAM,CAAC,CAAA;IAEzE,OAAO;QACH,IAAI,EAAE,IAAA,uBAAU,GAAE;QAClB,IAAI,EAAE,IAAA,uBAAU,GAAE;QAClB,YAAY,EAAE,IAAI,KAAK,CAAC,IAAA,kBAAS,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAA,uBAAU,GAAE,CAAC;QAC5D,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QAC9B,aAAa,EAAE,uCAA8B,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,EAAE,IAAA,uBAAU,GAAE;QACtB,YAAY,EAAE,IAAA,uBAAU,GAAE;QAC1B,IAAI,EAAE,IAAA,uBAAU,GAAE;QAClB,SAAS,EAAE,IAAA,kBAAS,EAAC,CAAC,EAAE,EAAE,CAAC;QAC3B,WAAW,EAAE,IAAA,kBAAS,EAAC,CAAC,EAAE,EAAE,CAAC;KACZ,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"generateRandomOutletOptions.js","sourceRoot":"","sources":["../../src/testDoubles/generateRandomOutletOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,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,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QAC9B,aAAa,EAAE,8BAA8B,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,EAAE,UAAU,EAAE;QACtB,YAAY,EAAE,UAAU,EAAE;QAC1B,IAAI,EAAE,UAAU,EAAE;QAClB,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QAC3B,WAAW,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;KACT,CAAA;AAC5B,CAAC"}