| 1 | import assert from "node:assert/strict"; |
| 2 | import { join } from "node:path"; |
| 3 | import { test } from "node:test"; |
| 4 | import { packagedSmokeEnv } from "./smoke-env.mjs"; |
| 5 | |
| 6 | test("packaged startup uses an isolated home without inherited development or service overrides", () => { |
| 7 | const parent = { |
| 8 | PATH: "system-path", DISPLAY: ":99", HOME: "system-home", |
| 9 | REASONIX_DEV: "1", Reasonix_Dev: "1", REASONIX_CHANNEL: "dev", REASONIX_COMMIT: "old", |
| 10 | REASONIX_DESKTOP_SERVICE: "old-service", REASONIX_ELECTRON_DEV_URL: "http://localhost:5173", |
| 11 | REASONIX_HOME: "real-user-data", REASONIX_STATE_HOME: "real-state", REASONIX_CACHE_HOME: "real-cache", |
| 12 | NODE_OPTIONS: "--require development-hook", ELECTRON_RUN_AS_NODE: "1", |
| 13 | }; |
| 14 | assert.deepEqual(packagedSmokeEnv(parent, "fixture"), { |
| 15 | PATH: "system-path", DISPLAY: ":99", HOME: "system-home", |
| 16 | REASONIX_HOME: "fixture", REASONIX_STATE_HOME: "fixture", REASONIX_CACHE_HOME: join("fixture", "cache"), |
| 17 | }); |
| 18 | assert.equal(parent.REASONIX_DEV, "1", "the caller environment is not mutated"); |
| 19 | }); |
| 20 |