mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-05 22:32:12 +00:00
test: speed up cli and command suites
This commit is contained in:
@@ -1,45 +1,43 @@
|
||||
import { Command } from "commander";
|
||||
import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest";
|
||||
import { beforeEach, describe, expect, it, vi } from "vitest";
|
||||
import { runRegisteredCli } from "../test-utils/command-runner.js";
|
||||
import { registerModelsCli } from "./models-cli.js";
|
||||
|
||||
const modelsStatusCommand = vi.fn().mockResolvedValue(undefined);
|
||||
const noopAsync = vi.fn(async () => undefined);
|
||||
const modelsAuthLoginCommand = vi.fn().mockResolvedValue(undefined);
|
||||
const mocks = vi.hoisted(() => ({
|
||||
modelsStatusCommand: vi.fn().mockResolvedValue(undefined),
|
||||
noopAsync: vi.fn(async () => undefined),
|
||||
modelsAuthLoginCommand: vi.fn().mockResolvedValue(undefined),
|
||||
}));
|
||||
|
||||
const { modelsStatusCommand, modelsAuthLoginCommand } = mocks;
|
||||
|
||||
vi.mock("../commands/models.js", () => ({
|
||||
modelsStatusCommand,
|
||||
modelsAliasesAddCommand: noopAsync,
|
||||
modelsAliasesListCommand: noopAsync,
|
||||
modelsAliasesRemoveCommand: noopAsync,
|
||||
modelsAuthAddCommand: noopAsync,
|
||||
modelsAuthLoginCommand,
|
||||
modelsAuthOrderClearCommand: noopAsync,
|
||||
modelsAuthOrderGetCommand: noopAsync,
|
||||
modelsAuthOrderSetCommand: noopAsync,
|
||||
modelsAuthPasteTokenCommand: noopAsync,
|
||||
modelsAuthSetupTokenCommand: noopAsync,
|
||||
modelsFallbacksAddCommand: noopAsync,
|
||||
modelsFallbacksClearCommand: noopAsync,
|
||||
modelsFallbacksListCommand: noopAsync,
|
||||
modelsFallbacksRemoveCommand: noopAsync,
|
||||
modelsImageFallbacksAddCommand: noopAsync,
|
||||
modelsImageFallbacksClearCommand: noopAsync,
|
||||
modelsImageFallbacksListCommand: noopAsync,
|
||||
modelsImageFallbacksRemoveCommand: noopAsync,
|
||||
modelsListCommand: noopAsync,
|
||||
modelsScanCommand: noopAsync,
|
||||
modelsSetCommand: noopAsync,
|
||||
modelsSetImageCommand: noopAsync,
|
||||
modelsStatusCommand: mocks.modelsStatusCommand,
|
||||
modelsAliasesAddCommand: mocks.noopAsync,
|
||||
modelsAliasesListCommand: mocks.noopAsync,
|
||||
modelsAliasesRemoveCommand: mocks.noopAsync,
|
||||
modelsAuthAddCommand: mocks.noopAsync,
|
||||
modelsAuthLoginCommand: mocks.modelsAuthLoginCommand,
|
||||
modelsAuthOrderClearCommand: mocks.noopAsync,
|
||||
modelsAuthOrderGetCommand: mocks.noopAsync,
|
||||
modelsAuthOrderSetCommand: mocks.noopAsync,
|
||||
modelsAuthPasteTokenCommand: mocks.noopAsync,
|
||||
modelsAuthSetupTokenCommand: mocks.noopAsync,
|
||||
modelsFallbacksAddCommand: mocks.noopAsync,
|
||||
modelsFallbacksClearCommand: mocks.noopAsync,
|
||||
modelsFallbacksListCommand: mocks.noopAsync,
|
||||
modelsFallbacksRemoveCommand: mocks.noopAsync,
|
||||
modelsImageFallbacksAddCommand: mocks.noopAsync,
|
||||
modelsImageFallbacksClearCommand: mocks.noopAsync,
|
||||
modelsImageFallbacksListCommand: mocks.noopAsync,
|
||||
modelsImageFallbacksRemoveCommand: mocks.noopAsync,
|
||||
modelsListCommand: mocks.noopAsync,
|
||||
modelsScanCommand: mocks.noopAsync,
|
||||
modelsSetCommand: mocks.noopAsync,
|
||||
modelsSetImageCommand: mocks.noopAsync,
|
||||
}));
|
||||
|
||||
describe("models cli", () => {
|
||||
let registerModelsCli: (typeof import("./models-cli.js"))["registerModelsCli"];
|
||||
|
||||
beforeAll(async () => {
|
||||
// Load once; vi.mock above ensures command handlers are already mocked.
|
||||
({ registerModelsCli } = await import("./models-cli.js"));
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
modelsAuthLoginCommand.mockClear();
|
||||
modelsStatusCommand.mockClear();
|
||||
|
||||
Reference in New Issue
Block a user