@o3r/testing
Version:
The module provides testing (e2e, unit test) utilities to help you build your own E2E pipeline integrating visual testing.
40 lines • 1.32 kB
TypeScript
import { Observable } from 'rxjs';
/** Specifies a fake select call */
export type FakeSelectCall<R> = ($source: Observable<any>) => Observable<R>;
/**
* Type representing a state selector function
*/
export type SelectorFunction<S, R> = (state: S, props?: object) => R;
/**
* Base selector spy
*/
export interface BaseSelectorSpy<R, S extends object = object> {
/** The selector to be spied on */
selector: SelectorFunction<S, R>;
}
/**
* Represents a spy for a given Memoized selector
* that returns a fake value
*/
export interface SelectorSpyResult<R, S extends object = object> extends BaseSelectorSpy<R, S> {
/** The fake result to be returned */
fakeResult: R;
}
/**
* Represents a spy for a given Memoized selector
* that returns a fake call
*/
export interface SelectorSpyCall<R, S extends object = object> extends BaseSelectorSpy<R, S> {
/** The fake result call to be used */
fakeResult: FakeSelectCall<R>;
}
/**
* Represents a spy for a given Memoized selector
*/
export type SelectorSpy<R, S extends object = object> = SelectorSpyResult<R, S> | SelectorSpyCall<R, S>;
/**
* Identifies if spy is a spyResult or spyCall
* @param spy
*/
export declare function isSelectorSpyCall<R>(spy: SelectorSpy<R>): spy is SelectorSpyCall<R>;
//# sourceMappingURL=typings.d.ts.map