Spaces:
Running
Running
| import { describe, expect, it } from "vitest"; | |
| import { collectZalouserStatusIssues } from "./status-issues.js"; | |
| describe("collectZalouserStatusIssues", () => { | |
| it("flags missing zca when configured is false", () => { | |
| const issues = collectZalouserStatusIssues([ | |
| { | |
| accountId: "default", | |
| enabled: true, | |
| configured: false, | |
| lastError: "zca CLI not found in PATH", | |
| }, | |
| ]); | |
| expect(issues).toHaveLength(1); | |
| expect(issues[0]?.kind).toBe("runtime"); | |
| expect(issues[0]?.message).toMatch(/zca CLI not found/i); | |
| }); | |
| it("flags missing auth when configured is false", () => { | |
| const issues = collectZalouserStatusIssues([ | |
| { | |
| accountId: "default", | |
| enabled: true, | |
| configured: false, | |
| lastError: "not authenticated", | |
| }, | |
| ]); | |
| expect(issues).toHaveLength(1); | |
| expect(issues[0]?.kind).toBe("auth"); | |
| expect(issues[0]?.message).toMatch(/Not authenticated/i); | |
| }); | |
| it("warns when dmPolicy is open", () => { | |
| const issues = collectZalouserStatusIssues([ | |
| { | |
| accountId: "default", | |
| enabled: true, | |
| configured: true, | |
| dmPolicy: "open", | |
| }, | |
| ]); | |
| expect(issues).toHaveLength(1); | |
| expect(issues[0]?.kind).toBe("config"); | |
| }); | |
| it("skips disabled accounts", () => { | |
| const issues = collectZalouserStatusIssues([ | |
| { | |
| accountId: "default", | |
| enabled: false, | |
| configured: false, | |
| lastError: "zca CLI not found in PATH", | |
| }, | |
| ]); | |
| expect(issues).toHaveLength(0); | |
| }); | |
| }); | |