From ca3cc71054334ca3f9c8683a2e30790165426c48 Mon Sep 17 00:00:00 2001 From: zuiidea Date: Tue, 14 Apr 2026 22:37:01 +0800 Subject: [PATCH] test(create): integration test for transforms without network Made-with: Cursor --- .../create/fixtures/minimal-app/package.json | 5 ++++ .../src/integration/create-pipeline.test.ts | 26 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 packages/create/fixtures/minimal-app/package.json create mode 100644 packages/create/src/integration/create-pipeline.test.ts diff --git a/packages/create/fixtures/minimal-app/package.json b/packages/create/fixtures/minimal-app/package.json new file mode 100644 index 0000000..5e4a02c --- /dev/null +++ b/packages/create/fixtures/minimal-app/package.json @@ -0,0 +1,5 @@ +{ + "name": "template-placeholder", + "version": "0.0.0", + "private": true +} diff --git a/packages/create/src/integration/create-pipeline.test.ts b/packages/create/src/integration/create-pipeline.test.ts new file mode 100644 index 0000000..d5b095f --- /dev/null +++ b/packages/create/src/integration/create-pipeline.test.ts @@ -0,0 +1,26 @@ +import fs from "node:fs"; +import os from "node:os"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import { describe, expect, it } from "vitest"; +import { runTransforms } from "../transforms/run-transforms.js"; + +describe("create pipeline transforms", () => { + it("renames package.json", async () => { + const tmp = fs.mkdtempSync(path.join(os.tmpdir(), "cad-")); + const fixture = path.join( + path.dirname(fileURLToPath(import.meta.url)), + "../../fixtures/minimal-app" + ); + fs.cpSync(fixture, tmp, { recursive: true }); + await runTransforms({ + projectRoot: tmp, + packageName: "my-fine-app", + skip: false, + }); + const pkg = JSON.parse( + fs.readFileSync(path.join(tmp, "package.json"), "utf8") + ); + expect(pkg.name).toBe("my-fine-app"); + }); +});