@microsoft/live-share-media 2.0.0-internal.7 → 2.0.0-internal.8

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 (150) hide show
  1. package/bin/cjs/LiveMediaSessionCoordinator.d.ts +38 -7
  2. package/bin/cjs/LiveMediaSessionCoordinator.d.ts.map +1 -1
  3. package/bin/cjs/LiveMediaSessionCoordinator.js +90 -9
  4. package/bin/cjs/LiveMediaSessionCoordinator.js.map +1 -1
  5. package/bin/cjs/internals/GroupCoordinatorState.d.ts +2 -1
  6. package/bin/cjs/internals/GroupCoordinatorState.d.ts.map +1 -1
  7. package/bin/cjs/internals/GroupCoordinatorState.js.map +1 -1
  8. package/bin/cjs/internals/GroupPlaybackPosition.d.ts +2 -2
  9. package/bin/cjs/internals/GroupPlaybackPosition.d.ts.map +1 -1
  10. package/bin/cjs/internals/GroupPlaybackPosition.js +1 -1
  11. package/bin/cjs/internals/GroupPlaybackPosition.js.map +1 -1
  12. package/bin/esm/LiveMediaSessionCoordinator.d.ts +38 -7
  13. package/bin/esm/LiveMediaSessionCoordinator.d.ts.map +1 -1
  14. package/bin/esm/LiveMediaSessionCoordinator.js +91 -10
  15. package/bin/esm/LiveMediaSessionCoordinator.js.map +1 -1
  16. package/bin/esm/internals/GroupCoordinatorState.d.ts +2 -1
  17. package/bin/esm/internals/GroupCoordinatorState.d.ts.map +1 -1
  18. package/bin/esm/internals/GroupCoordinatorState.js.map +1 -1
  19. package/bin/esm/internals/GroupPlaybackPosition.d.ts +2 -2
  20. package/bin/esm/internals/GroupPlaybackPosition.d.ts.map +1 -1
  21. package/bin/esm/internals/GroupPlaybackPosition.js +1 -1
  22. package/bin/esm/internals/GroupPlaybackPosition.js.map +1 -1
  23. package/package.json +3 -3
  24. package/src/LiveMediaSessionCoordinator.ts +96 -10
  25. package/src/internals/GroupCoordinatorState.ts +2 -1
  26. package/src/internals/GroupPlaybackPosition.ts +4 -4
  27. package/src/internals/PriorityTimeInterval.ts +76 -0
  28. package/.mocharc.cjs +0 -12
  29. package/.nycrc.json +0 -11
  30. package/bin/test/IMediaPlayer.d.ts +0 -21
  31. package/bin/test/IMediaPlayer.d.ts.map +0 -1
  32. package/bin/test/IMediaPlayer.js +0 -7
  33. package/bin/test/IMediaPlayer.js.map +0 -1
  34. package/bin/test/LiveMediaSession.d.ts +0 -97
  35. package/bin/test/LiveMediaSession.d.ts.map +0 -1
  36. package/bin/test/LiveMediaSession.js +0 -261
  37. package/bin/test/LiveMediaSession.js.map +0 -1
  38. package/bin/test/LiveMediaSessionCoordinator.d.ts +0 -296
  39. package/bin/test/LiveMediaSessionCoordinator.d.ts.map +0 -1
  40. package/bin/test/LiveMediaSessionCoordinator.js +0 -552
  41. package/bin/test/LiveMediaSessionCoordinator.js.map +0 -1
  42. package/bin/test/LiveMediaSessionCoordinatorSuspension.d.ts +0 -20
  43. package/bin/test/LiveMediaSessionCoordinatorSuspension.d.ts.map +0 -1
  44. package/bin/test/LiveMediaSessionCoordinatorSuspension.js +0 -28
  45. package/bin/test/LiveMediaSessionCoordinatorSuspension.js.map +0 -1
  46. package/bin/test/MediaPlayerSynchronizer.d.ts +0 -204
  47. package/bin/test/MediaPlayerSynchronizer.d.ts.map +0 -1
  48. package/bin/test/MediaPlayerSynchronizer.js +0 -574
  49. package/bin/test/MediaPlayerSynchronizer.js.map +0 -1
  50. package/bin/test/MediaSessionActionThrottler.d.ts +0 -12
  51. package/bin/test/MediaSessionActionThrottler.d.ts.map +0 -1
  52. package/bin/test/MediaSessionActionThrottler.js +0 -14
  53. package/bin/test/MediaSessionActionThrottler.js.map +0 -1
  54. package/bin/test/MediaSessionExtensions.d.ts +0 -177
  55. package/bin/test/MediaSessionExtensions.d.ts.map +0 -1
  56. package/bin/test/MediaSessionExtensions.js +0 -26
  57. package/bin/test/MediaSessionExtensions.js.map +0 -1
  58. package/bin/test/RepeatedActionThrottler.d.ts +0 -20
  59. package/bin/test/RepeatedActionThrottler.d.ts.map +0 -1
  60. package/bin/test/RepeatedActionThrottler.js +0 -63
  61. package/bin/test/RepeatedActionThrottler.js.map +0 -1
  62. package/bin/test/VolumeManager.d.ts +0 -84
  63. package/bin/test/VolumeManager.d.ts.map +0 -1
  64. package/bin/test/VolumeManager.js +0 -175
  65. package/bin/test/VolumeManager.js.map +0 -1
  66. package/bin/test/index.d.ts +0 -14
  67. package/bin/test/index.d.ts.map +0 -1
  68. package/bin/test/index.js +0 -30
  69. package/bin/test/index.js.map +0 -1
  70. package/bin/test/internals/GroupCoordinatorState.d.ts +0 -110
  71. package/bin/test/internals/GroupCoordinatorState.d.ts.map +0 -1
  72. package/bin/test/internals/GroupCoordinatorState.js +0 -516
  73. package/bin/test/internals/GroupCoordinatorState.js.map +0 -1
  74. package/bin/test/internals/GroupPlaybackPosition.d.ts +0 -71
  75. package/bin/test/internals/GroupPlaybackPosition.d.ts.map +0 -1
  76. package/bin/test/internals/GroupPlaybackPosition.js +0 -170
  77. package/bin/test/internals/GroupPlaybackPosition.js.map +0 -1
  78. package/bin/test/internals/GroupPlaybackRate.d.ts +0 -38
  79. package/bin/test/internals/GroupPlaybackRate.d.ts.map +0 -1
  80. package/bin/test/internals/GroupPlaybackRate.js +0 -59
  81. package/bin/test/internals/GroupPlaybackRate.js.map +0 -1
  82. package/bin/test/internals/GroupPlaybackTrack.d.ts +0 -45
  83. package/bin/test/internals/GroupPlaybackTrack.d.ts.map +0 -1
  84. package/bin/test/internals/GroupPlaybackTrack.js +0 -122
  85. package/bin/test/internals/GroupPlaybackTrack.js.map +0 -1
  86. package/bin/test/internals/GroupPlaybackTrackData.d.ts +0 -40
  87. package/bin/test/internals/GroupPlaybackTrackData.d.ts.map +0 -1
  88. package/bin/test/internals/GroupPlaybackTrackData.js +0 -70
  89. package/bin/test/internals/GroupPlaybackTrackData.js.map +0 -1
  90. package/bin/test/internals/GroupTransportState.d.ts +0 -52
  91. package/bin/test/internals/GroupTransportState.d.ts.map +0 -1
  92. package/bin/test/internals/GroupTransportState.js +0 -120
  93. package/bin/test/internals/GroupTransportState.js.map +0 -1
  94. package/bin/test/internals/PriorityTimeInterval.d.ts +0 -33
  95. package/bin/test/internals/PriorityTimeInterval.d.ts.map +0 -1
  96. package/bin/test/internals/PriorityTimeInterval.js +0 -45
  97. package/bin/test/internals/PriorityTimeInterval.js.map +0 -1
  98. package/bin/test/internals/consts.d.ts +0 -83
  99. package/bin/test/internals/consts.d.ts.map +0 -1
  100. package/bin/test/internals/consts.js +0 -92
  101. package/bin/test/internals/consts.js.map +0 -1
  102. package/bin/test/internals/errors.d.ts +0 -17
  103. package/bin/test/internals/errors.d.ts.map +0 -1
  104. package/bin/test/internals/errors.js +0 -34
  105. package/bin/test/internals/errors.js.map +0 -1
  106. package/bin/test/internals/interfaces.d.ts +0 -23
  107. package/bin/test/internals/interfaces.d.ts.map +0 -1
  108. package/bin/test/internals/interfaces.js +0 -3
  109. package/bin/test/internals/interfaces.js.map +0 -1
  110. package/bin/test/package.json +0 -1
  111. package/bin/test/test/GroupPlaybackPosition.spec.d.ts +0 -6
  112. package/bin/test/test/GroupPlaybackPosition.spec.d.ts.map +0 -1
  113. package/bin/test/test/GroupPlaybackPosition.spec.js +0 -315
  114. package/bin/test/test/GroupPlaybackPosition.spec.js.map +0 -1
  115. package/bin/test/test/GroupPlaybackRate.spec.d.ts +0 -6
  116. package/bin/test/test/GroupPlaybackRate.spec.d.ts.map +0 -1
  117. package/bin/test/test/GroupPlaybackRate.spec.js +0 -47
  118. package/bin/test/test/GroupPlaybackRate.spec.js.map +0 -1
  119. package/bin/test/test/GroupPlaybackTrack.spec.d.ts +0 -6
  120. package/bin/test/test/GroupPlaybackTrack.spec.d.ts.map +0 -1
  121. package/bin/test/test/GroupPlaybackTrack.spec.js +0 -171
  122. package/bin/test/test/GroupPlaybackTrack.spec.js.map +0 -1
  123. package/bin/test/test/GroupPlaybackTrackData.spec.d.ts +0 -6
  124. package/bin/test/test/GroupPlaybackTrackData.spec.d.ts.map +0 -1
  125. package/bin/test/test/GroupPlaybackTrackData.spec.js +0 -63
  126. package/bin/test/test/GroupPlaybackTrackData.spec.js.map +0 -1
  127. package/bin/test/test/LiveMediaSession_ManualActionHandler.spec.d.ts +0 -6
  128. package/bin/test/test/LiveMediaSession_ManualActionHandler.spec.d.ts.map +0 -1
  129. package/bin/test/test/LiveMediaSession_ManualActionHandler.spec.js +0 -324
  130. package/bin/test/test/LiveMediaSession_ManualActionHandler.spec.js.map +0 -1
  131. package/bin/test/test/LiveMediaSession_Synchronizer.spec.d.ts +0 -6
  132. package/bin/test/test/LiveMediaSession_Synchronizer.spec.d.ts.map +0 -1
  133. package/bin/test/test/LiveMediaSession_Synchronizer.spec.js +0 -669
  134. package/bin/test/test/LiveMediaSession_Synchronizer.spec.js.map +0 -1
  135. package/bin/test/test/PriorityTimeInterval.spec.d.ts +0 -6
  136. package/bin/test/test/PriorityTimeInterval.spec.d.ts.map +0 -1
  137. package/bin/test/test/PriorityTimeInterval.spec.js +0 -67
  138. package/bin/test/test/PriorityTimeInterval.spec.js.map +0 -1
  139. package/bin/test/test/TestUtils.d.ts +0 -44
  140. package/bin/test/test/TestUtils.d.ts.map +0 -1
  141. package/bin/test/test/TestUtils.js +0 -116
  142. package/bin/test/test/TestUtils.js.map +0 -1
  143. package/bin/test/test/VolumeManager.spec.d.ts +0 -2
  144. package/bin/test/test/VolumeManager.spec.d.ts.map +0 -1
  145. package/bin/test/test/VolumeManager.spec.js +0 -163
  146. package/bin/test/test/VolumeManager.spec.js.map +0 -1
  147. package/nyc/junit-report.json +0 -930
  148. package/nyc/junit-report.xml +0 -59
  149. package/tsconfig.test.json +0 -9
  150. package/typedoc.json +0 -10
@@ -1,315 +0,0 @@
1
- "use strict";
2
- /**
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the Microsoft Live Share SDK License.
5
- */
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- require("mocha");
17
- const assert_1 = require("assert");
18
- const GroupPlaybackPosition_1 = require("../internals/GroupPlaybackPosition");
19
- const GroupPlaybackRate_1 = require("../internals/GroupPlaybackRate");
20
- const GroupTransportState_1 = require("../internals/GroupTransportState");
21
- const live_share_1 = require("@microsoft/live-share");
22
- const internal_1 = require("@microsoft/live-share/internal");
23
- const GroupPlaybackTrack_1 = require("../internals/GroupPlaybackTrack");
24
- const PriorityTimeInterval_1 = require("../internals/PriorityTimeInterval");
25
- function createTransportUpdate(runtime, liveRuntime, playbackState, startPosition) {
26
- return {
27
- playbackState: playbackState,
28
- startPosition: startPosition,
29
- timestamp: liveRuntime.getTimestamp(),
30
- clientId: runtime.clientId,
31
- };
32
- }
33
- function createPositionUpdate(runtime, liveRuntime, playbackState, position, waitPoint, duration) {
34
- return {
35
- playbackState: playbackState,
36
- waitPoint: waitPoint,
37
- position: position,
38
- duration: duration,
39
- timestamp: liveRuntime.getTimestamp(),
40
- clientId: runtime.clientId,
41
- };
42
- }
43
- function subtractSeconds(seconds, update) {
44
- update.timestamp -= seconds * 1000;
45
- return update;
46
- }
47
- function addSeconds(seconds, update) {
48
- update.timestamp += seconds * 1000;
49
- return update;
50
- }
51
- class MockRuntimeSignaler {
52
- constructor(clientId) {
53
- this.clientId = clientId;
54
- }
55
- }
56
- function getObjects() {
57
- return __awaiter(this, arguments, void 0, function* (updateInterval = 10000) {
58
- const host = live_share_1.TestLiveShareHost.create();
59
- let liveRuntime = new internal_1.MockLiveShareRuntime(false, updateInterval, host);
60
- let runtime1 = new MockRuntimeSignaler("1");
61
- let runtime2 = new MockRuntimeSignaler("2");
62
- yield liveRuntime.start();
63
- const dispose = () => {
64
- liveRuntime.stop();
65
- };
66
- return {
67
- liveRuntime,
68
- runtime1,
69
- runtime2,
70
- dispose,
71
- };
72
- });
73
- }
74
- function getPlayBackPosition(liveRuntime_1, runtime1_1) {
75
- return __awaiter(this, arguments, void 0, function* (liveRuntime, runtime1, updateInterval = new PriorityTimeInterval_1.PriorityTimeInterval(10, () => 1)) {
76
- const track1 = {
77
- trackIdentifier: "track1",
78
- title: "Test Track 1",
79
- };
80
- const getMediaPlayerState = () => {
81
- return {
82
- metadata: track1,
83
- playbackState: "none",
84
- positionState: undefined,
85
- trackData: null,
86
- };
87
- };
88
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(getMediaPlayerState);
89
- const plybackRate = new GroupPlaybackRate_1.GroupPlaybackRate();
90
- const transportState = new GroupTransportState_1.GroupTransportState(playbackTrack, plybackRate, getMediaPlayerState, liveRuntime);
91
- const playbackPosition = new GroupPlaybackPosition_1.GroupPlaybackPosition(transportState, plybackRate, runtime1, liveRuntime, updateInterval);
92
- return { playbackPosition, transportState };
93
- });
94
- }
95
- describe("GroupPlaybackPosition", () => {
96
- it("should start with 0 clients", () => __awaiter(void 0, void 0, void 0, function* () {
97
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
98
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1);
99
- try {
100
- (0, assert_1.strict)(playbackPosition.totalClients == 0, `wrong client count`);
101
- (0, assert_1.strict)(playbackPosition.localPosition == undefined, `wrong position`);
102
- }
103
- finally {
104
- dispose();
105
- }
106
- }));
107
- it("should find local position", () => __awaiter(void 0, void 0, void 0, function* () {
108
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
109
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1);
110
- try {
111
- playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "none", 0.0));
112
- (0, assert_1.strict)(playbackPosition.totalClients == 1, `wrong client count`);
113
- (0, assert_1.strict)(playbackPosition.localPosition != undefined, `local position not found`);
114
- }
115
- finally {
116
- dispose();
117
- }
118
- }));
119
- it("should update local position", () => __awaiter(void 0, void 0, void 0, function* () {
120
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
121
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1);
122
- try {
123
- const position = createPositionUpdate(runtime1, liveRuntime, "none", 0.0);
124
- yield playbackPosition.UpdatePlaybackPosition(position);
125
- const newPosition = addSeconds(1.0, createPositionUpdate(runtime1, liveRuntime, "none", 0.0));
126
- yield playbackPosition.UpdatePlaybackPosition(newPosition);
127
- (0, assert_1.strict)(playbackPosition.totalClients == 1, `wrong client count`);
128
- (0, assert_1.strict)(playbackPosition.localPosition != undefined, `local position not found`);
129
- (0, assert_1.strict)(playbackPosition.localPosition.timestamp ==
130
- newPosition.timestamp, `position not updated`);
131
- }
132
- finally {
133
- dispose();
134
- }
135
- }));
136
- it("should ignore older position updates", () => __awaiter(void 0, void 0, void 0, function* () {
137
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
138
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1);
139
- try {
140
- const position = createPositionUpdate(runtime1, liveRuntime, "none", 0.0);
141
- yield playbackPosition.UpdatePlaybackPosition(position);
142
- const newPosition = subtractSeconds(1.0, createPositionUpdate(runtime1, liveRuntime, "none", 0.0));
143
- yield playbackPosition.UpdatePlaybackPosition(newPosition);
144
- (0, assert_1.strict)(playbackPosition.totalClients == 1, `wrong client count`);
145
- (0, assert_1.strict)(playbackPosition.localPosition != undefined, `local position not found`);
146
- (0, assert_1.strict)(playbackPosition.localPosition.timestamp == position.timestamp, `position not updated`);
147
- }
148
- finally {
149
- dispose();
150
- }
151
- }));
152
- it("should track other client positions", () => __awaiter(void 0, void 0, void 0, function* () {
153
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
154
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1);
155
- try {
156
- const position1 = createPositionUpdate(runtime1, liveRuntime, "none", 0.0);
157
- yield playbackPosition.UpdatePlaybackPosition(position1);
158
- const position2 = addSeconds(1.0, createPositionUpdate(runtime2, liveRuntime, "none", 0.0));
159
- yield playbackPosition.UpdatePlaybackPosition(position2);
160
- (0, assert_1.strict)(playbackPosition.totalClients == 2, `wrong client count`);
161
- (0, assert_1.strict)(playbackPosition.localPosition != undefined, `local position not found`);
162
- (0, assert_1.strict)(playbackPosition.localPosition.timestamp == position1.timestamp, `position not updated`);
163
- }
164
- finally {
165
- dispose();
166
- }
167
- }));
168
- it("should enumerate client positions", () => __awaiter(void 0, void 0, void 0, function* () {
169
- const updateInterval = new PriorityTimeInterval_1.PriorityTimeInterval(10, () => 1);
170
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
171
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1, updateInterval);
172
- try {
173
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "none", 0.0));
174
- yield playbackPosition.UpdatePlaybackPosition(subtractSeconds(updateInterval.seconds, createPositionUpdate(runtime2, liveRuntime, "none", 0.0)));
175
- let cnt = 0;
176
- playbackPosition.forEach((position, projectedPosition) => {
177
- (0, assert_1.strict)(position.position == 0.0, `wrong position ${position.position}`);
178
- (0, assert_1.strict)(projectedPosition == 0.0, `wrong projected position ${projectedPosition}`);
179
- cnt++;
180
- });
181
- (0, assert_1.strict)(cnt == 2, `only enumerated ${cnt} positions`);
182
- }
183
- finally {
184
- dispose();
185
- }
186
- }));
187
- it("should ignore stale positions", () => __awaiter(void 0, void 0, void 0, function* () {
188
- const updateInterval = new PriorityTimeInterval_1.PriorityTimeInterval(10, () => 1);
189
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
190
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1, updateInterval);
191
- try {
192
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "none", 0.0));
193
- yield playbackPosition.UpdatePlaybackPosition(subtractSeconds(updateInterval.seconds * 3, createPositionUpdate(runtime2, liveRuntime, "none", 0.0)));
194
- let cnt = 0;
195
- playbackPosition.forEach((position, projectedPosition) => {
196
- (0, assert_1.strict)(position.position == 0.0, `wrong position ${position.position}`);
197
- (0, assert_1.strict)(projectedPosition == 0.0, `wrong projected position ${projectedPosition}`);
198
- cnt++;
199
- });
200
- (0, assert_1.strict)(cnt == 1, `enumerated ${cnt} positions`);
201
- }
202
- finally {
203
- dispose();
204
- }
205
- }));
206
- it("should project position when playing", () => __awaiter(void 0, void 0, void 0, function* () {
207
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
208
- const { playbackPosition } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
209
- try {
210
- playbackPosition.UpdatePlaybackPosition(subtractSeconds(1.0, createPositionUpdate(runtime1, liveRuntime, "playing", 0.0)));
211
- let cnt = 0;
212
- playbackPosition.forEach((position, projectedPosition) => {
213
- (0, assert_1.strict)(position.position == 0.0, `wrong position ${position.position}`);
214
- (0, assert_1.strict)(projectedPosition >= 1.0, `wrong projected position ${projectedPosition}`);
215
- cnt++;
216
- });
217
- (0, assert_1.strict)(cnt == 1, `enumerated ${cnt} positions`);
218
- }
219
- finally {
220
- dispose();
221
- }
222
- }));
223
- it("should compute max playback position relative to transport state", () => __awaiter(void 0, void 0, void 0, function* () {
224
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
225
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
226
- try {
227
- (0, assert_1.strict)(playbackPosition.maxPosition == 0.0, `wrong starting position of ${playbackPosition.maxPosition}`);
228
- transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
229
- (0, assert_1.strict)(playbackPosition.maxPosition >= 2.0, `wrong projected position of ${playbackPosition.maxPosition}`);
230
- }
231
- finally {
232
- dispose();
233
- }
234
- }));
235
- it("should compute target position relative to other client positions", () => __awaiter(void 0, void 0, void 0, function* () {
236
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
237
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
238
- try {
239
- (0, assert_1.strict)(playbackPosition.targetPosition == 0.0, `wrong starting position of ${playbackPosition.targetPosition}`);
240
- yield transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
241
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "playing", 0.0));
242
- yield playbackPosition.UpdatePlaybackPosition(subtractSeconds(1.0, createPositionUpdate(runtime2, liveRuntime, "playing", 0.0)));
243
- // We're sometimes getting back a target position of 0.999 instead of 1.0 (some sort of rounding error)
244
- (0, assert_1.strict)(playbackPosition.targetPosition > 0.9 &&
245
- playbackPosition.targetPosition < 2.0, `wrong target position of ${playbackPosition.targetPosition}`);
246
- }
247
- finally {
248
- dispose();
249
- }
250
- }));
251
- it("should limit max and target position by media duration", () => __awaiter(void 0, void 0, void 0, function* () {
252
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
253
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
254
- try {
255
- yield transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
256
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "playing", 0.0, undefined, 0.5));
257
- yield playbackPosition.UpdatePlaybackPosition(subtractSeconds(1.0, createPositionUpdate(runtime2, liveRuntime, "playing", 0.0, undefined, 0.5)));
258
- (0, assert_1.strict)(playbackPosition.maxPosition == 0.5, `wrong max position ${playbackPosition.maxPosition}`);
259
- (0, assert_1.strict)(playbackPosition.targetPosition == 0.5, `wrong target position ${playbackPosition.targetPosition}`);
260
- }
261
- finally {
262
- dispose();
263
- }
264
- }));
265
- it("should count number of waiting clients", () => __awaiter(void 0, void 0, void 0, function* () {
266
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
267
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
268
- try {
269
- yield transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
270
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "suspended", 2.0, {
271
- position: 2.0,
272
- }));
273
- yield playbackPosition.UpdatePlaybackPosition(subtractSeconds(1.0, createPositionUpdate(runtime2, liveRuntime, "playing", 0.0, undefined)));
274
- (0, assert_1.strict)(playbackPosition.clientsWaiting == 2, `wrong count ${playbackPosition.clientsWaiting}`);
275
- }
276
- finally {
277
- dispose();
278
- }
279
- }));
280
- it("should drop waiting count after suspension ends", () => __awaiter(void 0, void 0, void 0, function* () {
281
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
282
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
283
- try {
284
- yield transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
285
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "waiting", 2.0, {
286
- position: 2.0,
287
- }));
288
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime2, liveRuntime, "suspended", 2.0, {
289
- position: 2.0,
290
- }));
291
- (0, assert_1.strict)(playbackPosition.clientsWaiting == 1, `wrong count ${playbackPosition.clientsWaiting}`);
292
- }
293
- finally {
294
- dispose();
295
- }
296
- }));
297
- it("should drop waiting count to 0 after all clients reach wait point", () => __awaiter(void 0, void 0, void 0, function* () {
298
- const { liveRuntime, runtime1, runtime2, dispose } = yield getObjects();
299
- const { playbackPosition, transportState } = yield getPlayBackPosition(liveRuntime, runtime1, new PriorityTimeInterval_1.PriorityTimeInterval(1000, () => 1));
300
- try {
301
- yield transportState.updateState(subtractSeconds(2.0, createTransportUpdate(runtime1, liveRuntime, "playing", 0.0)), "user");
302
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime1, liveRuntime, "waiting", 2.0, {
303
- position: 2.0,
304
- }));
305
- yield playbackPosition.UpdatePlaybackPosition(createPositionUpdate(runtime2, liveRuntime, "waiting", 2.0, {
306
- position: 2.0,
307
- }));
308
- (0, assert_1.strict)(playbackPosition.clientsWaiting == 0, `wrong count ${playbackPosition.clientsWaiting}`);
309
- }
310
- finally {
311
- dispose();
312
- }
313
- }));
314
- });
315
- //# sourceMappingURL=GroupPlaybackPosition.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackPosition.spec.js","sourceRoot":"","sources":["../../../src/test/GroupPlaybackPosition.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
- import "mocha";
6
- //# sourceMappingURL=GroupPlaybackRate.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackRate.spec.d.ts","sourceRoot":"","sources":["../../../src/test/GroupPlaybackRate.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,OAAO,CAAC"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- /**
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the Microsoft Live Share SDK License.
5
- */
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- require("mocha");
17
- const assert_1 = require("assert");
18
- const GroupPlaybackRate_1 = require("../internals/GroupPlaybackRate");
19
- describe("GroupPlaybackRate", () => {
20
- it("updatePlaybackRate should return false for older events", () => {
21
- const trackData = new GroupPlaybackRate_1.GroupPlaybackRate();
22
- (0, assert_1.strict)(trackData.updatePlaybackRate({
23
- playbackRate: 1.5,
24
- timestamp: 2,
25
- clientId: "",
26
- }, "user"));
27
- (0, assert_1.strict)(!trackData.updatePlaybackRate({
28
- playbackRate: 2,
29
- timestamp: 1,
30
- clientId: "",
31
- }, "user"));
32
- });
33
- it("updatePlaybackRate should return false for events that are the same time, but clientId is higher sort", () => __awaiter(void 0, void 0, void 0, function* () {
34
- const rate = new GroupPlaybackRate_1.GroupPlaybackRate();
35
- rate.updatePlaybackRate({
36
- playbackRate: 1.5,
37
- timestamp: 2,
38
- clientId: "a",
39
- }, "user");
40
- (0, assert_1.strict)(!rate.updatePlaybackRate({
41
- playbackRate: 2,
42
- timestamp: 2,
43
- clientId: "b",
44
- }, "user"));
45
- }));
46
- });
47
- //# sourceMappingURL=GroupPlaybackRate.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackRate.spec.js","sourceRoot":"","sources":["../../../src/test/GroupPlaybackRate.spec.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;AAEH,iBAAe;AACf,mCAA0C;AAC1C,sEAAmE;AAEnE,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAC/D,MAAM,SAAS,GAAG,IAAI,qCAAiB,EAAE,CAAC;QAE1C,IAAA,eAAM,EACF,SAAS,CAAC,kBAAkB,CACxB;YACI,YAAY,EAAE,GAAG;YACjB,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,EAAE;SACf,EACD,MAAM,CACT,CACJ,CAAC;QAEF,IAAA,eAAM,EACF,CAAC,SAAS,CAAC,kBAAkB,CACzB;YACI,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,EAAE;SACf,EACD,MAAM,CACT,CACJ,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uGAAuG,EAAE,GAAS,EAAE;QACnH,MAAM,IAAI,GAAG,IAAI,qCAAiB,EAAE,CAAC;QAErC,IAAI,CAAC,kBAAkB,CACnB;YACI,YAAY,EAAE,GAAG;YACjB,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,GAAG;SAChB,EACD,MAAM,CACT,CAAC;QAEF,IAAA,eAAM,EACF,CAAC,IAAI,CAAC,kBAAkB,CACpB;YACI,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,GAAG;SAChB,EACD,MAAM,CACT,CACJ,CAAC;IACN,CAAC,CAAA,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
- import "mocha";
6
- //# sourceMappingURL=GroupPlaybackTrack.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackTrack.spec.d.ts","sourceRoot":"","sources":["../../../src/test/GroupPlaybackTrack.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,OAAO,CAAC"}
@@ -1,171 +0,0 @@
1
- "use strict";
2
- /**
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the Microsoft Live Share SDK License.
5
- */
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- require("mocha");
17
- const assert_1 = require("assert");
18
- const GroupPlaybackTrack_1 = require("../internals/GroupPlaybackTrack");
19
- const internal_1 = require("@microsoft/live-share/internal");
20
- describe("GroupPlaybackTrack", () => {
21
- const track1 = {
22
- trackIdentifier: "track1",
23
- title: "Test Track 1",
24
- };
25
- const track2 = {
26
- trackIdentifier: "track2",
27
- title: "Test Track 2",
28
- };
29
- it('should fire "trackChange" event when no media', () => __awaiter(void 0, void 0, void 0, function* () {
30
- const done = new internal_1.Deferred();
31
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
32
- return {
33
- metadata: { trackIdentifier: "src" },
34
- playbackState: "none",
35
- positionState: undefined,
36
- trackData: null,
37
- };
38
- });
39
- playbackTrack.on(GroupPlaybackTrack_1.GroupPlaybackTrackEvents.trackChange, (event) => {
40
- try {
41
- (0, assert_1.strict)(event.metadata, `no metadata`);
42
- (0, assert_1.strict)(event.metadata.trackIdentifier == "track1", `wrong track`);
43
- done.resolve();
44
- }
45
- catch (err) {
46
- done.reject(err);
47
- }
48
- });
49
- playbackTrack.updateTrack({
50
- metadata: track1,
51
- waitPoints: [],
52
- timestamp: 1,
53
- clientId: "a",
54
- }, "user");
55
- yield done.promise;
56
- }));
57
- it("should switch tracks", () => {
58
- let cnt = 0;
59
- let metadata = null;
60
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
61
- return {
62
- metadata: null,
63
- playbackState: "none",
64
- positionState: undefined,
65
- trackData: null,
66
- };
67
- });
68
- playbackTrack.on(GroupPlaybackTrack_1.GroupPlaybackTrackEvents.trackChange, (event) => {
69
- cnt++;
70
- metadata = event.metadata;
71
- });
72
- playbackTrack.updateTrack({
73
- metadata: track1,
74
- waitPoints: [],
75
- timestamp: 1,
76
- clientId: "a",
77
- }, "user");
78
- playbackTrack.updateTrack({
79
- metadata: track2,
80
- waitPoints: [],
81
- timestamp: 2,
82
- clientId: "b",
83
- }, "user");
84
- (0, assert_1.strict)(cnt == 2, `called trackChange event ${cnt} times`);
85
- (0, assert_1.strict)(metadata.trackIdentifier == "track2", `wrong track set`);
86
- });
87
- it("should ignore track changes with older timestamps", () => {
88
- let cnt = 0;
89
- let metadata = null;
90
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
91
- return {
92
- metadata: null,
93
- playbackState: "none",
94
- positionState: undefined,
95
- trackData: null,
96
- };
97
- });
98
- playbackTrack.on(GroupPlaybackTrack_1.GroupPlaybackTrackEvents.trackChange, (event) => {
99
- cnt++;
100
- metadata = event.metadata;
101
- });
102
- playbackTrack.updateTrack({
103
- metadata: track1,
104
- waitPoints: [],
105
- timestamp: 3,
106
- clientId: "a",
107
- }, "user");
108
- playbackTrack.updateTrack({
109
- metadata: track2,
110
- waitPoints: [],
111
- timestamp: 2,
112
- clientId: "b",
113
- }, "user");
114
- (0, assert_1.strict)(cnt == 1, `called trackChange event ${cnt} times`);
115
- });
116
- it("should insert waitpoint if no existing waitpoints", () => {
117
- var _a;
118
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
119
- return {
120
- metadata: null,
121
- playbackState: "none",
122
- positionState: undefined,
123
- trackData: null,
124
- };
125
- });
126
- playbackTrack.addWaitPoint({ position: 10 });
127
- (0, assert_1.strict)(((_a = playbackTrack.findNextWaitPoint(undefined)) === null || _a === void 0 ? void 0 : _a.position) === 10);
128
- });
129
- it("should insert waitpoints in correct order", () => {
130
- var _a;
131
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
132
- return {
133
- metadata: null,
134
- playbackState: "none",
135
- positionState: undefined,
136
- trackData: null,
137
- };
138
- });
139
- playbackTrack.updateTrack({
140
- metadata: track1,
141
- waitPoints: [{ position: 30 }],
142
- timestamp: 1,
143
- clientId: "a",
144
- }, "user");
145
- playbackTrack.addWaitPoint({ position: 10 });
146
- (0, assert_1.strict)(((_a = playbackTrack.findNextWaitPoint(undefined)) === null || _a === void 0 ? void 0 : _a.position) === 10);
147
- });
148
- it("updateTrack should return false for events that are the same time, but clientId is higher sort", () => {
149
- const playbackTrack = new GroupPlaybackTrack_1.GroupPlaybackTrack(() => {
150
- return {
151
- metadata: { trackIdentifier: "src" },
152
- playbackState: "none",
153
- positionState: undefined,
154
- trackData: null,
155
- };
156
- });
157
- playbackTrack.updateTrack({
158
- metadata: track1,
159
- waitPoints: [],
160
- timestamp: 3,
161
- clientId: "a",
162
- }, "user");
163
- (0, assert_1.strict)(!playbackTrack.updateTrack({
164
- metadata: track1,
165
- waitPoints: [],
166
- timestamp: 3,
167
- clientId: "b",
168
- }, "user"));
169
- });
170
- });
171
- //# sourceMappingURL=GroupPlaybackTrack.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackTrack.spec.js","sourceRoot":"","sources":["../../../src/test/GroupPlaybackTrack.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
- import "mocha";
6
- //# sourceMappingURL=GroupPlaybackTrackData.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GroupPlaybackTrackData.spec.d.ts","sourceRoot":"","sources":["../../../src/test/GroupPlaybackTrackData.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,OAAO,CAAC"}