feat: 第三期 — Tier 3 LLM-as-Judge 集成
This commit is contained in:
56
tests/agent/e2e-llm-judge.test.ts
Normal file
56
tests/agent/e2e-llm-judge.test.ts
Normal file
@@ -0,0 +1,56 @@
|
||||
import { describe, it, expect, beforeEach, afterEach } from "bun:test";
|
||||
import { LLMJudgeRunner, isLLMAvailable } from "./tier3-llm-judge.ts";
|
||||
import {
|
||||
setupTempDir,
|
||||
cleanupTempDir,
|
||||
getTempDir,
|
||||
createFreshProject,
|
||||
writeDoc,
|
||||
} from "./fixtures.ts";
|
||||
|
||||
const tier3Available = isLLMAvailable();
|
||||
|
||||
if (!tier3Available) {
|
||||
console.log("RUNE_E2E_LLM_ 环境变量未配置,Tier 3 测试已跳过");
|
||||
}
|
||||
|
||||
describe("e2e: Tier 3", () => {
|
||||
const runner = new LLMJudgeRunner();
|
||||
const testFn = tier3Available ? it : it.skip;
|
||||
|
||||
beforeEach(async () => {
|
||||
await setupTempDir();
|
||||
});
|
||||
|
||||
afterEach(async () => {
|
||||
await cleanupTempDir();
|
||||
});
|
||||
|
||||
testFn(
|
||||
"plan: 单文档输出有效行动计划",
|
||||
async () => {
|
||||
const config = await createFreshProject();
|
||||
const result = await runner.runPlan(getTempDir(), "user-auth", "design", config);
|
||||
|
||||
expect(result.rawPlan).toBeDefined();
|
||||
expect(result.rawPlan).toHaveProperty("actions");
|
||||
const plan = result.rawPlan as { actions: unknown[] };
|
||||
expect(plan.actions.length).toBeGreaterThan(0);
|
||||
},
|
||||
120_000,
|
||||
);
|
||||
|
||||
testFn(
|
||||
"build: 单任务输出有效行动计划",
|
||||
async () => {
|
||||
const config = await createFreshProject();
|
||||
await writeDoc("auth", "task", "- [ ] 实现登录 API\n");
|
||||
|
||||
const result = await runner.runBuild(getTempDir(), "auth", config);
|
||||
|
||||
expect(result.rawPlan).toBeDefined();
|
||||
expect(result.rawPlan).toHaveProperty("actions");
|
||||
},
|
||||
120_000,
|
||||
);
|
||||
});
|
||||
Reference in New Issue
Block a user