import { FakeAccountService, mockAccountServiceWith, } from "@bitwarden/common/../spec/fake-account-service"; import { FakeStateProvider } from "@bitwarden/common/../spec/fake-state-provider"; import { awaitAsync } from "@bitwarden/common/../spec/utils"; import { Utils } from "@bitwarden/common/platform/misc/utils"; import { UserId } from "@bitwarden/common/types/guid"; import { BrowserComponentState } from "../../../models/browserComponentState"; import { BrowserSendComponentState } from "../../../models/browserSendComponentState"; import { BrowserSendStateService } from "./browser-send-state.service"; describe("Browser Send State Service", () => { let stateProvider: FakeStateProvider; let accountService: FakeAccountService; let stateService: BrowserSendStateService; const mockUserId = Utils.newGuid() as UserId; beforeEach(() => { accountService = mockAccountServiceWith(mockUserId); stateProvider = new FakeStateProvider(accountService); stateService = new BrowserSendStateService(stateProvider); }); describe("getBrowserSendComponentState", () => { it("should return BrowserSendComponentState", async () => { const state = new BrowserSendComponentState(); state.scrollY = 0; state.searchText = "test"; await stateService.setBrowserSendComponentState(state); await awaitAsync(); const actual = await stateService.getBrowserSendComponentState(); expect(actual).toStrictEqual(state); }); }); describe("getBrowserSendTypeComponentState", () => { it("should return BrowserComponentState", async () => { const state = new BrowserComponentState(); state.scrollY = 0; state.searchText = "test"; await stateService.setBrowserSendTypeComponentState(state); await awaitAsync(); const actual = await stateService.getBrowserSendTypeComponentState(); expect(actual).toStrictEqual(state); }); }); });