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"); + }); +});