diff --git a/src/state/CallViewModel.test.ts b/src/state/CallViewModel.test.ts index 1fe2fa74..968f87fe 100644 --- a/src/state/CallViewModel.test.ts +++ b/src/state/CallViewModel.test.ts @@ -356,29 +356,29 @@ test("screen sharing activates spotlight layout", () => { }); test("participants stay in the same order unless to appear/disappear", () => { - withTestScheduler(({ cold, schedule, expectObservable }) => { - const modeMarbles = " g"; + withTestScheduler(({ hot, schedule, expectObservable }) => { + const inputModeMarbles = " g"; // First Bob speaks, then Dave, then Alice - const aSpeakingMarbles = "n- 1998ms - 1999ms y"; - const bSpeakingMarbles = "ny 1998ms n 1999ms -"; - const dSpeakingMarbles = "n- 1998ms y 1999ms n"; + const inputASpeakingMarbles = "n- 1998ms - 1999ms y"; + const inputBSpeakingMarbles = "ny 1998ms n 1999ms -"; + const inputDSpeakingMarbles = "n- 1998ms y 1999ms n"; // Nothing should change when Bob speaks, because Bob is already on screen. // When Dave speaks he should switch with Alice because she's the one who // hasn't spoken at all. Then when Alice speaks, she should return to her // place at the top. - const layoutMarbles = " a 1999ms b 1999ms a 57999ms c 1999ms a"; + const expectedLayoutMarbles = "a 1999ms b 1999ms a 57999ms c 1999ms a"; withCallViewModel( of([aliceParticipant, bobParticipant, daveParticipant]), of([aliceRtcMember, bobRtcMember, daveRtcMember]), of(ConnectionState.Connected), new Map([ - [aliceParticipant, cold(aSpeakingMarbles, { y: true, n: false })], - [bobParticipant, cold(bSpeakingMarbles, { y: true, n: false })], - [daveParticipant, cold(dSpeakingMarbles, { y: true, n: false })], + [aliceParticipant, hot(inputASpeakingMarbles, { y: true, n: false })], + [bobParticipant, hot(inputBSpeakingMarbles, { y: true, n: false })], + [daveParticipant, hot(inputDSpeakingMarbles, { y: true, n: false })], ]), (vm) => { - schedule(modeMarbles, { + schedule(inputModeMarbles, { g: () => { // We imagine that only three tiles (the first three) will be visible // on screen at a time @@ -391,23 +391,26 @@ test("participants stay in the same order unless to appear/disappear", () => { }, }); - expectObservable(summarizeLayout(vm.layout)).toBe(layoutMarbles, { - a: { - type: "grid", - spotlight: undefined, - grid: ["local:0", `${aliceId}:0`, `${bobId}:0`, `${daveId}:0`], + expectObservable(summarizeLayout(vm.layout)).toBe( + expectedLayoutMarbles, + { + a: { + type: "grid", + spotlight: undefined, + grid: ["local:0", `${aliceId}:0`, `${bobId}:0`, `${daveId}:0`], + }, + b: { + type: "grid", + spotlight: undefined, + grid: ["local:0", `${daveId}:0`, `${bobId}:0`, `${aliceId}:0`], + }, + c: { + type: "grid", + spotlight: undefined, + grid: ["local:0", `${aliceId}:0`, `${daveId}:0`, `${bobId}:0`], + }, }, - b: { - type: "grid", - spotlight: undefined, - grid: ["local:0", `${daveId}:0`, `${bobId}:0`, `${aliceId}:0`], - }, - c: { - type: "grid", - spotlight: undefined, - grid: ["local:0", `${aliceId}:0`, `${daveId}:0`, `${bobId}:0`], - }, - }); + ); }, ); });