mirror of
https://github.com/vector-im/element-call.git
synced 2026-09-07 21:45:18 +00:00
Use testScope in ObservableScope tests
This commit is contained in:
@@ -16,7 +16,7 @@ import {
|
|||||||
ObservableScope,
|
ObservableScope,
|
||||||
trackEpoch,
|
trackEpoch,
|
||||||
} from "./ObservableScope";
|
} from "./ObservableScope";
|
||||||
import { withTestScheduler } from "../utils/test";
|
import { testScope, withTestScheduler } from "../utils/test";
|
||||||
|
|
||||||
describe("Epoch", () => {
|
describe("Epoch", () => {
|
||||||
it("should map the value correctly", () => {
|
it("should map the value correctly", () => {
|
||||||
@@ -87,7 +87,7 @@ describe("Epoch", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it("behavior test", () => {
|
it("behavior test", () => {
|
||||||
const scope = new ObservableScope();
|
const scope = testScope();
|
||||||
const s$ = new Subject();
|
const s$ = new Subject();
|
||||||
const behavior$ = scope.behavior(s$, 0);
|
const behavior$ = scope.behavior(s$, 0);
|
||||||
behavior$.subscribe((value) => {
|
behavior$.subscribe((value) => {
|
||||||
@@ -115,7 +115,7 @@ describe("Reconcile", () => {
|
|||||||
|
|
||||||
it("should wait clean up before processing next", async () => {
|
it("should wait clean up before processing next", async () => {
|
||||||
vi.useFakeTimers();
|
vi.useFakeTimers();
|
||||||
const scope = new ObservableScope();
|
const scope = testScope();
|
||||||
const behavior$ = new BehaviorSubject<number>(0);
|
const behavior$ = new BehaviorSubject<number>(0);
|
||||||
|
|
||||||
const setup = vi.fn().mockImplementation(async () => await sleep(100));
|
const setup = vi.fn().mockImplementation(async () => await sleep(100));
|
||||||
@@ -149,7 +149,7 @@ describe("Reconcile", () => {
|
|||||||
|
|
||||||
it("should skip intermediates values that are not setup", async () => {
|
it("should skip intermediates values that are not setup", async () => {
|
||||||
vi.useFakeTimers();
|
vi.useFakeTimers();
|
||||||
const scope = new ObservableScope();
|
const scope = testScope();
|
||||||
const behavior$ = new BehaviorSubject<number>(0);
|
const behavior$ = new BehaviorSubject<number>(0);
|
||||||
|
|
||||||
const setup = vi
|
const setup = vi
|
||||||
@@ -194,7 +194,7 @@ describe("Reconcile", () => {
|
|||||||
|
|
||||||
it("should wait for setup to complete before starting cleanup", async () => {
|
it("should wait for setup to complete before starting cleanup", async () => {
|
||||||
vi.useFakeTimers();
|
vi.useFakeTimers();
|
||||||
const scope = new ObservableScope();
|
const scope = testScope();
|
||||||
const behavior$ = new BehaviorSubject<number>(0);
|
const behavior$ = new BehaviorSubject<number>(0);
|
||||||
|
|
||||||
const setup = vi
|
const setup = vi
|
||||||
@@ -241,7 +241,7 @@ describe("Reconcile", () => {
|
|||||||
describe("behavior", () => {
|
describe("behavior", () => {
|
||||||
it("warns with the tag and nesting depth, logging each new depth once", () => {
|
it("warns with the tag and nesting depth, logging each new depth once", () => {
|
||||||
const warn = vi.spyOn(logger, "warn").mockImplementation(() => {});
|
const warn = vi.spyOn(logger, "warn").mockImplementation(() => {});
|
||||||
const scope = new ObservableScope();
|
const scope = testScope();
|
||||||
const source$ = new Subject<number>();
|
const source$ = new Subject<number>();
|
||||||
const behavior$ = scope.behavior(source$, 0, "tagged");
|
const behavior$ = scope.behavior(source$, 0, "tagged");
|
||||||
// Re-enter once on value 1 (depth 2), then a nested re-entry on value 2
|
// Re-enter once on value 1 (depth 2), then a nested re-entry on value 2
|
||||||
@@ -267,7 +267,6 @@ describe("behavior", () => {
|
|||||||
// left stranded on the oldest.
|
// left stranded on the oldest.
|
||||||
expect(behavior$.value).toBe(3);
|
expect(behavior$.value).toBe(3);
|
||||||
expect(seen.at(-1)).toBe(1);
|
expect(seen.at(-1)).toBe(1);
|
||||||
scope.end();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it("warns when the scope is ended while a behavior is mid-delivery", () => {
|
it("warns when the scope is ended while a behavior is mid-delivery", () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user