
























@@ -13,6 +13,17 @@ import {
1313writeFile,
1414} from "./test/provider-helpers.js";
151516+function planItemById(
17+items: readonly { id: string; kind?: string; action?: string }[],
18+id: string,
19+) {
20+const item = items.find((candidate) => candidate.id === id);
21+if (!item) {
22+throw new Error(`expected migration plan item ${id}`);
23+}
24+return item;
25+}
26+1627describe("Claude migration provider", () => {
1728afterEach(async () => {
1829await cleanupTempRoots();
@@ -86,20 +97,16 @@ describe("Claude migration provider", () => {
8697);
87988899expect(plan.summary.total).toBeGreaterThan(0);
89-expect(plan.items).toEqual(
90-expect.arrayContaining([
91-expect.objectContaining({ id: "workspace:CLAUDE.md", kind: "workspace" }),
92-expect.objectContaining({
93-id: "config:mcp-server:project-mcp:filesystem",
94-kind: "config",
95-}),
96-expect.objectContaining({ id: "skill:claude-command-commit", action: "create" }),
97-expect.objectContaining({ id: "skill:review", action: "copy" }),
98-expect.objectContaining({ id: "archive:CLAUDE.local.md", action: "archive" }),
99-expect.objectContaining({ id: "archive:project-agents", action: "archive" }),
100-expect.objectContaining({ id: expect.stringMatching(/^manual:hooks:/u), kind: "manual" }),
101-]),
100+expect(planItemById(plan.items, "workspace:CLAUDE.md").kind).toBe("workspace");
101+expect(planItemById(plan.items, "config:mcp-server:project-mcp:filesystem").kind).toBe(
102+"config",
102103);
104+expect(planItemById(plan.items, "skill:claude-command-commit").action).toBe("create");
105+expect(planItemById(plan.items, "skill:review").action).toBe("copy");
106+expect(planItemById(plan.items, "archive:CLAUDE.local.md").action).toBe("archive");
107+expect(planItemById(plan.items, "archive:project-agents").action).toBe("archive");
108+const manualHooksItem = plan.items.find((item) => item.id.startsWith("manual:hooks:"));
109+expect(manualHooksItem?.kind).toBe("manual");
103110104111const redacted = JSON.stringify(redactMigrationPlan(plan));
105112expect(redacted).not.toContain("short-dev-key");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。