gold-sight
Version:
Test your code on realistic content, precisely
60 lines • 3.61 kB
TypeScript
import { AssertionBlueprint, AssertionChain, AssertOptions, Config, DeepCloneOptions, StateBase } from "./index.types";
import { deepClone } from "./utils/deepClone";
import { EventBus, IEvent, getEventByState, getEventByPayload, getEvent, getEventUUID, getEventByUUID, filterEventsByUUID, withEventBus, withEvents, withEventNames, withEventNamesList, filterEventsByPayload, filterEventsByState, filterEvents, makeEventContext, getFuncData } from "./utils/eventBus";
import { AbsCounter } from "./utils/absCounter";
declare abstract class AssertionMaster<TState, TMaster extends {
index: number;
step?: number;
}> {
protected _state: (TState & StateBase<TMaster>) | undefined;
private assertionChains;
private _globalKey;
private _master?;
private _globalOptions;
get globalOptions(): {
assert?: AssertOptions | undefined;
deepClone?: DeepCloneOptions | undefined;
getSnapshot?: ((state: TState, args: any, result: any) => any) | undefined;
};
constructor(assertionChains: {
[funcKey: string]: AssertionChain<TState, any, any>;
}, globalKey: string, globalOptions?: Config<TState>);
get globalKey(): string;
set master(master: TMaster);
get master(): TMaster | undefined;
get state(): (TState & StateBase<TMaster>) | undefined;
abstract newState(): TState;
resetState: () => void;
assertQueue: (options?: AssertOptions) => Map<string, number>;
wrapFn<T extends (...args: any[]) => any>(fn: T, name: string, processors?: {
argsConverter?: (args: Parameters<T>) => any;
resultConverter?: (result: ReturnType<T>, args: Parameters<T>) => any;
pre?: (state: TState, args: Parameters<T>) => void;
post?: (state: TState, args: Parameters<T>, result: any) => void;
deepClone?: DeepCloneOptions;
getAddress?: (state: TState, args: Parameters<T>, result: ReturnType<T>) => string | object;
getSnapshot?: (state: TState, args: Parameters<T>, result: ReturnType<T>) => any;
}): T;
wrapAll(): void;
reset(): void;
setQueue(queue: Map<number, AssertionBlueprint>): void;
getQueue(): Map<number, AssertionBlueprint<any, any, any>>;
setQueueFromArray(queue: [number, AssertionBlueprint][]): void;
runPostOps(): void;
runPostOp(state: TState, args: any, result: any, processors: any, assertionData: AssertionBlueprint<TState, any, any>): void;
wrapTopFn<T extends (...args: any[]) => any>(fn: T, name: string, options?: {
argsConverter?: (args: Parameters<T>) => any;
resultConverter?: (result: ReturnType<T>, args: Parameters<T>) => any;
pre?: (state: TState, args: Parameters<T>) => void;
post?: (state: TState, args: Parameters<T>, result: ReturnType<T>) => void;
deepClone?: DeepCloneOptions;
args?: Parameters<T>;
getSnapshot?: (state?: TState, args?: Parameters<T>, result?: ReturnType<T>) => any;
}): (...args: Parameters<T>) => ReturnType<T>;
}
declare function getQueue(globalKey: string): Map<number, AssertionBlueprint<any, any, any>>;
declare function getGlobalConfig(): Config<any>;
declare function setGlobalConfig(config: Config<any>): void;
export { getQueue, deepClone, EventBus, IEvent, getEventByState, getEventByPayload, getEvent, AbsCounter, getEventUUID, getEventByUUID, filterEventsByUUID, filterEventsByPayload, filterEventsByState, filterEvents, withEventBus, withEvents, withEventNames, withEventNamesList, makeEventContext, getGlobalConfig, setGlobalConfig, getFuncData, };
export default AssertionMaster;
//# sourceMappingURL=index.d.ts.map