2026-01-10 20:32:15 +01:00
|
|
|
import { describe, expect, it } from "vitest";
|
|
|
|
|
import { rewriteUpdateFlagArgv } from "./run-main.js";
|
|
|
|
|
|
|
|
|
|
describe("rewriteUpdateFlagArgv", () => {
|
|
|
|
|
it("leaves argv unchanged when --update is absent", () => {
|
2026-01-31 18:31:49 +09:00
|
|
|
const argv = ["node", "entry.js", "status"];
|
2026-01-10 20:32:15 +01:00
|
|
|
expect(rewriteUpdateFlagArgv(argv)).toBe(argv);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("rewrites --update into the update command", () => {
|
2026-01-31 18:31:49 +09:00
|
|
|
expect(rewriteUpdateFlagArgv(["node", "entry.js", "--update"])).toEqual([
|
2026-01-10 20:32:15 +01:00
|
|
|
"node",
|
2026-01-31 18:31:49 +09:00
|
|
|
"entry.js",
|
2026-01-10 20:32:15 +01:00
|
|
|
"update",
|
|
|
|
|
]);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("preserves global flags that appear before --update", () => {
|
2026-01-31 18:31:49 +09:00
|
|
|
expect(rewriteUpdateFlagArgv(["node", "entry.js", "--profile", "p", "--update"])).toEqual([
|
2026-01-14 14:31:43 +00:00
|
|
|
"node",
|
2026-01-31 18:31:49 +09:00
|
|
|
"entry.js",
|
2026-01-14 14:31:43 +00:00
|
|
|
"--profile",
|
|
|
|
|
"p",
|
|
|
|
|
"update",
|
|
|
|
|
]);
|
2026-01-10 20:32:15 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it("keeps update options after the rewritten command", () => {
|
2026-01-31 18:31:49 +09:00
|
|
|
expect(rewriteUpdateFlagArgv(["node", "entry.js", "--update", "--json"])).toEqual([
|
2026-01-14 14:31:43 +00:00
|
|
|
"node",
|
2026-01-31 18:31:49 +09:00
|
|
|
"entry.js",
|
2026-01-14 14:31:43 +00:00
|
|
|
"update",
|
|
|
|
|
"--json",
|
|
|
|
|
]);
|
2026-01-10 20:32:15 +01:00
|
|
|
});
|
|
|
|
|
});
|