Files
buzz-sheet/lib/health/readiness.test.ts
T
gunshiz 8ca2469bce
CI / Verify (push) Successful in 1m3s
CI / Build immutable images and deploy (push) Failing after 47s
test : fix test error
2026-08-29 14:19:42 +00:00

41 lines
1.0 KiB
TypeScript

import { describe, expect, it, vi } from "vitest";
import { checkReadiness } from "./readiness";
describe("readiness checks", () => {
it("reports ready only when every dependency succeeds", async () => {
await expect(
checkReadiness({ database: async () => true, redis: async () => "PONG" }),
).resolves.toEqual({
status: "ready",
checks: { database: "ok", redis: "ok" },
});
await expect(
checkReadiness({
database: async () => true,
redis: async () => {
throw new Error("offline");
},
}),
).resolves.toEqual({
status: "not-ready",
checks: { database: "ok", redis: "failed" },
});
});
it("bounds a stalled dependency", async () => {
vi.useFakeTimers();
const result = checkReadiness(
{ database: () => new Promise(() => undefined) },
100,
);
vi.advanceTimersByTime(100);
await expect(result).resolves.toEqual({
status: "not-ready",
checks: { database: "failed" },
});
vi.useRealTimers();
});
});