import { describe, it, expect, vi } from "vitest"; import { render, screen } from "@testing-library/react"; import { ProjectHealthBadge } from "../ProjectHealthBadge"; import type { ProjectHealth, ProjectStatus } from "@fusion/core"; vi.mock("lucide-react", () => ({ Play: () => , Pause: () => , AlertCircle: () => , Loader2: () => , })); function makeHealth(overrides: Partial = {}): ProjectHealth { return { projectId: "proj_abc123", status: "active", activeTaskCount: 2, inFlightAgentCount: 1, totalTasksCompleted: 10, totalTasksFailed: 0, updatedAt: "2026-01-01T00:00:00.000Z", ...overrides, }; } describe("ProjectHealthBadge", () => { it("renders a fallback badge for unknown or missing statuses", () => { expect(() => { render( <> ); }).not.toThrow(); expect(screen.getByText("Removing")).toBeDefined(); expect(screen.getByText("Unknown")).toBeDefined(); expect(screen.getAllByTestId("alert-icon")).toHaveLength(2); }); });