70bf21e064
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
Handle Changesets / Handle Changesets (push) Has been cancelled
Semgrep OSS scan / semgrep-oss (push) Has been cancelled
35 lines
1.2 KiB
TypeScript
35 lines
1.2 KiB
TypeScript
import { vi } from "vitest";
|
|
import type { AutoConfigContext } from "../../src/context";
|
|
|
|
/**
|
|
* Creates a mock `AutoConfigContext` suitable for testing.
|
|
* All dialog methods default to returning sensible values.
|
|
* The logger delegates to `console` so that `mockConsoleMethods()` captures
|
|
* the output and tests can assert on `std.out`, `std.warn`, etc.
|
|
*
|
|
* @param overrides - Partial overrides to customize the context.
|
|
* @returns A fully mocked `AutoConfigContext`.
|
|
*/
|
|
export function createMockContext(
|
|
overrides?: Partial<AutoConfigContext>
|
|
): AutoConfigContext {
|
|
return {
|
|
logger: {
|
|
log: vi.fn((...args: unknown[]) => console.log(...args)),
|
|
info: vi.fn((...args: unknown[]) => console.info(...args)),
|
|
warn: vi.fn((...args: unknown[]) => console.warn(...args)),
|
|
debug: vi.fn((...args: unknown[]) => console.debug(...args)),
|
|
error: vi.fn((...args: unknown[]) => console.error(...args)),
|
|
},
|
|
dialogs: {
|
|
confirm: vi.fn().mockResolvedValue(true),
|
|
prompt: vi.fn().mockResolvedValue(""),
|
|
select: vi.fn().mockResolvedValue(""),
|
|
},
|
|
runCommand: vi.fn(),
|
|
isNonInteractiveOrCI: () => false,
|
|
getCacheFolder: () => undefined,
|
|
...overrides,
|
|
};
|
|
}
|