Hold Electron toasts until after the client starts (#30768)

* Hold Electron toasts until after the client starts

as otherwise they won't be shown and will be reset out of existence

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update test

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Lint

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
Michael Telatynski
2025-09-16 11:16:12 +01:00
committed by GitHub
parent 3432613195
commit 3c13f55b74
2 changed files with 21 additions and 3 deletions

View File

@@ -130,14 +130,25 @@ describe("ElectronPlatform", () => {
it("should show a toast when showToast is fired", async () => {
new ElectronPlatform();
dispatcher.dispatch(
{
action: "client_started",
},
true,
);
const spy = jest.spyOn(ToastStore.sharedInstance(), "addOrReplaceToast");
const [event, handler] = getElectronEventHandlerCall("showToast")!;
handler({} as any, { title: "title", description: "description" });
expect(event).toBeTruthy();
expect(spy).toHaveBeenCalledWith(
expect.objectContaining({ title: "title", props: expect.objectContaining({ description: "description" }) }),
await waitFor(() =>
expect(spy).toHaveBeenCalledWith(
expect.objectContaining({
title: "title",
props: expect.objectContaining({ description: "description" }),
}),
),
);
});