Files
AgentCompany/tests/unit/worker-message-schema.test.ts
T

44 lines
1.2 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { workerMessageSchema } from "../../src/main/worker/entry/types";
const RUN_ID = "00000000-0000-4000-8000-000000000001";
describe("worker message schema", () => {
it("accepts run-finished messages keyed by usage status", () => {
expect(
workerMessageSchema.safeParse({
type: "run-finished",
runId: RUN_ID,
status: "failed",
summary: null,
errorMessage: "Agent stopped with error.",
exitCode: null,
signal: null,
model: "gpt-5.4",
usageStatus: "error_stop",
inputTokens: 12,
outputTokens: 1,
}).success,
).toBe(true);
});
it("rejects legacy unattributed-cost truth in run-finished messages", () => {
expect(
workerMessageSchema.safeParse({
type: "run-finished",
runId: RUN_ID,
status: "failed",
summary: null,
errorMessage: "Agent stopped with error.",
exitCode: null,
signal: null,
model: "gpt-5.4",
usageStatus: "error_stop",
unattributedCost: false,
inputTokens: 12,
outputTokens: 1,
}).success,
).toBe(false);
});
});