mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-12 23:40:45 +00:00
test: trim cli program test bootstrap overhead
This commit is contained in:
@@ -25,7 +25,7 @@ const { registerSubCliByName, registerSubCliCommands } = await import("./registe
|
||||
|
||||
describe("registerSubCliCommands", () => {
|
||||
const originalArgv = process.argv;
|
||||
const originalEnv = { ...process.env };
|
||||
const originalDisableLazySubcommands = process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS;
|
||||
|
||||
const createRegisteredProgram = (argv: string[], name?: string) => {
|
||||
process.argv = argv;
|
||||
@@ -38,8 +38,11 @@ describe("registerSubCliCommands", () => {
|
||||
};
|
||||
|
||||
beforeEach(() => {
|
||||
process.env = { ...originalEnv };
|
||||
delete process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS;
|
||||
if (originalDisableLazySubcommands === undefined) {
|
||||
delete process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS;
|
||||
} else {
|
||||
process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS = originalDisableLazySubcommands;
|
||||
}
|
||||
registerAcpCli.mockClear();
|
||||
acpAction.mockClear();
|
||||
registerNodesCli.mockClear();
|
||||
@@ -48,7 +51,11 @@ describe("registerSubCliCommands", () => {
|
||||
|
||||
afterEach(() => {
|
||||
process.argv = originalArgv;
|
||||
process.env = { ...originalEnv };
|
||||
if (originalDisableLazySubcommands === undefined) {
|
||||
delete process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS;
|
||||
} else {
|
||||
process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS = originalDisableLazySubcommands;
|
||||
}
|
||||
});
|
||||
|
||||
it("registers only the primary placeholder and dispatches", async () => {
|
||||
@@ -56,7 +63,7 @@ describe("registerSubCliCommands", () => {
|
||||
|
||||
expect(program.commands.map((cmd) => cmd.name())).toEqual(["acp"]);
|
||||
|
||||
await program.parseAsync(process.argv);
|
||||
await program.parseAsync(["acp"], { from: "user" });
|
||||
|
||||
expect(registerAcpCli).toHaveBeenCalledTimes(1);
|
||||
expect(acpAction).toHaveBeenCalledTimes(1);
|
||||
@@ -91,7 +98,7 @@ describe("registerSubCliCommands", () => {
|
||||
const names = program.commands.map((cmd) => cmd.name());
|
||||
expect(names.filter((name) => name === "acp")).toHaveLength(1);
|
||||
|
||||
await program.parseAsync(["node", "openclaw", "acp"], { from: "user" });
|
||||
await program.parseAsync(["acp"], { from: "user" });
|
||||
expect(registerAcpCli).toHaveBeenCalledTimes(1);
|
||||
expect(acpAction).toHaveBeenCalledTimes(1);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user