fix(qa): reject duplicate qa e2e outputs

This commit is contained in:
Vincent Koc
2026-06-23 13:34:20 +02:00
parent e856a24754
commit 7374ecc777
2 changed files with 27 additions and 4 deletions

View File

@@ -95,6 +95,23 @@ describe("qa-e2e script", () => {
expect(() => parseQaE2eArgs(["--output", "--help"])).toThrow("--output requires a value");
});
it("rejects duplicate output destinations before loading QA Lab", async () => {
const env: NodeJS.ProcessEnv = {};
const loadRuntime = vi.fn(async () => {
throw new Error("runtime loaded");
});
expect(() =>
parseQaE2eArgs(["--output", ".artifacts/first.md", "--output=.artifacts/second.md"]),
).toThrow("qa:e2e output path was provided more than once");
await expect(
main([".artifacts/first.md", "--output", ".artifacts/second.md"], { env, loadRuntime }),
).rejects.toThrow("qa:e2e output path was provided more than once");
expect(loadRuntime).not.toHaveBeenCalled();
expect(env.OPENCLAW_BUILD_PRIVATE_QA).toBeUndefined();
});
it.each([
{ status: "pass" as const, exitCode: 0 },
{ status: "fail" as const, exitCode: 1 },