TypeScript bug bashing

This commit is contained in:
Kevin Alwell
2025-04-29 12:14:46 -04:00
parent 132e87cc8c
commit ca7204537c

View File

@@ -8,11 +8,9 @@
import { describe, it, expect, vi } from "vitest";
import { AgentLoop } from "../src/utils/agent/agent-loop";
import type { AppConfig } from "../src/utils/config";
import type { ReviewDecision } from "../src/utils/agent/types";
// If you have a ReviewDecision type or enum, import it here:
// import type { ReviewDecision } from "../src/utils/agent/types";
import { ReviewDecision } from "../src/utils/agent/review";
/* ─────────── 1. Spy + module mock ─────────────────────────────── */
/* ─────────── 1. Spy + module mock ─────────────────────────────── */
const createSpy = vi.fn().mockResolvedValue({
data: { id: "resp_123", status: "completed", output: [] },
});
@@ -52,9 +50,7 @@ describe.each([
additionalWritableRoots: [],
onItem() {},
onLoading() {},
getCommandConfirmation: async () => ({
review: "approved" as ReviewDecision,
}),
getCommandConfirmation: async () => ({ review: ReviewDecision.YES }),
onLastResponseId() {},
});
@@ -68,26 +64,22 @@ describe.each([
expect(createSpy).toHaveBeenCalledTimes(1);
const payload = createSpy.mock.calls[0][0];
const payload: any = createSpy.mock.calls[0][0];
if (flag) {
/* behaviour when ZDR is *on* */
expect(payload).not.toHaveProperty("previous_response_id");
if (payload.input) {
payload.input.forEach((m: any) =>
expect(m.store === undefined ? false : m.store).toBe(false),
);
}
payload.input?.forEach((m: any) =>
expect(m.store === undefined ? false : m.store).toBe(false),
);
} else {
/* behaviour when ZDR is *off* */
expect(payload).toHaveProperty("previous_response_id");
if (payload.input) {
payload.input.forEach((m: any) => {
if ("store" in m) {
expect(m.store).not.toBe(false);
}
});
}
payload.input?.forEach((m: any) => {
if ("store" in m) {
expect(m.store).not.toBe(false);
}
});
}
});
});