Files
agentic-dev/turbo/generators/lib/snapshot.test.ts
Danijel Martinek f77e6ea881 chore(template): clean-slate template snapshot from bb4a0c7
Curated, product-agnostic snapshot of the post-story-04 tree: demo
content deleted, auth-only reference feature, web-next shell, all gates
green. Product-specific docs, ADRs 027-029, PRDs/epics/archive, editor
library traces, and product naming are curated out; generic template
repairs (coverage provider devDeps, root test:coverage script, live
lint fixes, root-only release-please) are kept. See TEMPLATE.md for
provenance, curation list, and usage.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
2026-07-12 20:40:54 +02:00

20 lines
751 B
TypeScript

import { describe, it, expect } from "vitest";
import { mkdtempSync, mkdirSync, writeFileSync } from "node:fs";
import { tmpdir } from "node:os";
import { join } from "node:path";
import { computeSnapshot } from "./snapshot.js";
describe("computeSnapshot", () => {
it("returns sorted file paths + sha256 hashes", () => {
const tmp = mkdtempSync(join(tmpdir(), "snapshot-"));
mkdirSync(join(tmp, "src"));
writeFileSync(join(tmp, "package.json"), `{ "name": "x" }\n`);
writeFileSync(join(tmp, "src", "index.ts"), `export {};\n`);
const snap = computeSnapshot(tmp);
expect(snap).toEqual([
{ path: "package.json", sha256: expect.any(String) },
{ path: "src/index.ts", sha256: expect.any(String) },
]);
});
});