diff --git a/src/api/tauri/repo/__tests__/repoListCoordinator.test.ts b/src/api/tauri/repo/__tests__/repoListCoordinator.test.ts index f44d2d0d4..44aafec59 100644 --- a/src/api/tauri/repo/__tests__/repoListCoordinator.test.ts +++ b/src/api/tauri/repo/__tests__/repoListCoordinator.test.ts @@ -83,4 +83,17 @@ describe("repository list coordinator", () => { "remaining", ]); }); + + it("releases a failed list request so a later load can retry", async () => { + invokeMock + .mockRejectedValueOnce(new Error("backend unavailable")) + .mockResolvedValueOnce([backendRepo("recovered")]); + + await expect(getRepos()).rejects.toThrow("backend unavailable"); + await expect(getRepos()).resolves.toMatchObject({ + data: { repos: [{ repo_id: "recovered" }] }, + }); + + expect(invokeMock).toHaveBeenCalledTimes(2); + }); });