@@ -77,7 +77,9 @@ describe("RTCEncryptionManager", () => {
77
77
getMembershipMock . mockReturnValue ( [ ] ) ;
78
78
79
79
encryptionManager . join ( undefined ) ;
80
-
80
+ // After join it is too early, key might be lost as no one is listening yet
81
+ expect ( onEncryptionKeysChanged ) . not . toHaveBeenCalled ( ) ;
82
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
81
83
// The key should have been rolled out immediately
82
84
expect ( onEncryptionKeysChanged ) . toHaveBeenCalled ( ) ;
83
85
} ) ;
@@ -91,6 +93,7 @@ describe("RTCEncryptionManager", () => {
91
93
getMembershipMock . mockReturnValue ( members ) ;
92
94
93
95
encryptionManager . join ( undefined ) ;
96
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
94
97
95
98
expect ( mockTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ;
96
99
expect ( mockTransport . sendKey ) . toHaveBeenCalledWith (
@@ -114,6 +117,7 @@ describe("RTCEncryptionManager", () => {
114
117
getMembershipMock . mockReturnValue ( members ) ;
115
118
116
119
encryptionManager . join ( undefined ) ;
120
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
117
121
118
122
expect ( mockTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ;
119
123
expect ( mockTransport . sendKey ) . toHaveBeenCalledWith (
@@ -169,6 +173,7 @@ describe("RTCEncryptionManager", () => {
169
173
170
174
// initial rollout
171
175
encryptionManager . join ( undefined ) ;
176
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
172
177
await jest . runOnlyPendingTimersAsync ( ) ;
173
178
174
179
expect ( mockTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ;
@@ -217,6 +222,7 @@ describe("RTCEncryptionManager", () => {
217
222
218
223
// initial rollout
219
224
encryptionManager . join ( undefined ) ;
225
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
220
226
await jest . runOnlyPendingTimersAsync ( ) ;
221
227
222
228
expect ( mockTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ;
@@ -246,6 +252,7 @@ describe("RTCEncryptionManager", () => {
246
252
getMembershipMock . mockReturnValue ( members ) ;
247
253
248
254
encryptionManager . join ( undefined ) ;
255
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
249
256
await jest . advanceTimersByTimeAsync ( 10 ) ;
250
257
251
258
expect ( mockTransport . sendKey ) . toHaveBeenCalledTimes ( 1 ) ;
@@ -324,6 +331,7 @@ describe("RTCEncryptionManager", () => {
324
331
getMembershipMock . mockReturnValue ( members ) ;
325
332
326
333
encryptionManager . join ( undefined ) ;
334
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
327
335
await jest . advanceTimersByTimeAsync ( 10 ) ;
328
336
329
337
mockTransport . emit (
@@ -431,6 +439,7 @@ describe("RTCEncryptionManager", () => {
431
439
432
440
// Let's join
433
441
encryptionManager . join ( undefined ) ;
442
+ encryptionManager . onMembershipsUpdate ( [ ] ) ;
434
443
await jest . advanceTimersByTimeAsync ( 10 ) ;
435
444
436
445
// The initial rollout
0 commit comments