refactor: 重命名 command checker 为 cmd checker 并适配跨平台测试
将 type/configKey 从 "command" 统一为 "cmd",源码目录 runner/command/ → runner/cmd/, spec 目录 command-checker/ → cmd-checker/,测试全部改用 bun -e 替代 Unix 系统命令, 归档 cmd-checker-enhancement 变更并同步 delta spec 到主 spec。
This commit is contained in:
26
tests/server/checker/runner/cmd/expect.test.ts
Normal file
26
tests/server/checker/runner/cmd/expect.test.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import { describe, expect, test } from "bun:test";
|
||||
|
||||
import { checkExitCode } from "../../../../../src/server/checker/runner/cmd/expect";
|
||||
|
||||
describe("checkExitCode", () => {
|
||||
test("exitCode 在允许列表中匹配成功", () => {
|
||||
const r = checkExitCode(0, [0]);
|
||||
expect(r.matched).toBe(true);
|
||||
expect(r.failure).toBeNull();
|
||||
});
|
||||
|
||||
test("exitCode 不在允许列表中匹配失败", () => {
|
||||
const r = checkExitCode(1, [0]);
|
||||
expect(r.matched).toBe(false);
|
||||
expect(r.failure!.phase).toBe("exitCode");
|
||||
expect(r.failure!.kind).toBe("mismatch");
|
||||
expect(r.failure!.expected).toEqual([0]);
|
||||
expect(r.failure!.actual).toBe(1);
|
||||
});
|
||||
|
||||
test("多个允许退出码", () => {
|
||||
expect(checkExitCode(0, [0, 1]).matched).toBe(true);
|
||||
expect(checkExitCode(1, [0, 1]).matched).toBe(true);
|
||||
expect(checkExitCode(2, [0, 1]).matched).toBe(false);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user