Files
cfw-autumn/server/tests/integration/crud/plans/diffing/diffPlanV1.revisiondojo.test.ts
Ayush Rodrigues a8e22d05a9 add diffPlanV1 diff/apply test suite with real customer fixtures
Round-trip tests against Firecrawl, Runable, RevisionDojo, and OnePREP
plan data proving diffPlanV1 + applyDiff reconstructs variants correctly.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-04 12:33:21 +01:00

33 lines
1.1 KiB
TypeScript

import { type ApiPlanV1 } from "@autumn/shared";
import { describe, expect, test } from "bun:test";
import { diffPlanV1 } from "@autumn/shared/utils/planV1Utils/diff/diffPlanV1.js";
import { applyDiff } from "@autumn/shared/utils/planV1Utils/diff/applyDiff.js";
import {
proBase,
proVariants,
plusBase,
plusVariants,
teacherProBase,
teacherProVariants,
} from "./diffPlanV1.revisiondojo.fixtures.js";
import { normalizePlan } from "./utils/normalizePlan.js";
// --- test matrix ---
const groups = [
{ name: "pro", base: proBase, variants: proVariants },
{ name: "plus", base: plusBase, variants: plusVariants },
{ name: "teacher_pro", base: teacherProBase, variants: teacherProVariants },
];
for (const { name, base, variants } of groups) {
describe(`revisiondojo ${name} group — diff/apply round-trip`, () => {
for (const variant of variants) {
test(`${variant.id} reconstructs from ${base.id} + diff`, () => {
const diff = diffPlanV1({ from: base, to: variant });
const reconstructed = applyDiff({ base, diff });
expect(normalizePlan(reconstructed)).toEqual(normalizePlan(variant));
});
}
});
}