UNPKG

@boost/core

Version:

Robust pipeline for creating dev tools that separate logic into routines and tasks.

28 lines 1.75 kB
import { Arguments } from 'yargs'; import { mockDebugger } from '@boost/debug/lib/testing'; import Console from './Console'; import Context from './Context'; import Plugin from './Plugin'; import Routine from './Routine'; import Task, { TaskAction } from './Task'; import Tool, { ToolConfig, ToolOptions, ToolPluginRegistry } from './Tool'; import { PackageConfig, PluginSetting } from './types'; export { mockDebugger }; export interface TestToolPlugins extends ToolPluginRegistry { plugin: Plugin; } export interface TestToolConfig extends ToolConfig { plugins: PluginSetting<Plugin>; } export declare type TestTool = Tool<TestToolPlugins, TestToolConfig>; export declare function stubArgs<T extends object = {}>(fields?: Partial<T>): Arguments<T>; export declare function stubPackageJson<T extends object = {}>(fields?: Partial<PackageConfig & T>): PackageConfig & T; export declare function stubToolConfig<T extends ToolConfig = TestToolConfig>(config?: Partial<T>): T; export declare function mockTool<P extends ToolPluginRegistry = TestToolPlugins, C extends ToolConfig = TestToolConfig>(options?: Partial<ToolOptions>, config?: Partial<C>, injectPlugin?: boolean): Tool<P, C>; export declare function mockConsole(tool: Tool<any, any>): Console; export declare class MockRoutine<Ctx extends Context, T extends Tool<any, any> = TestTool> extends Routine<Ctx, T> { execute(context: Ctx, value: unknown): Promise<unknown>; } export declare function mockRoutine<Ctx extends Context, T extends Tool<any, any> = TestTool>(tool: T, key?: string, title?: string): Routine<Ctx, T>; export declare function mockTask<Ctx extends Context>(action?: TaskAction<Ctx> | null, title?: string): Task<Ctx>; //# sourceMappingURL=testUtils.d.ts.map