@rxjs-stuff/marbles
Version:
A set of plugins that provide a natural feeling integration with Mocha and Chai for RxJS "marbles" testing.
29 lines (28 loc) • 1.18 kB
TypeScript
import { Observable } from 'rxjs';
import { TestScheduler } from 'rxjs/testing';
import { observableToBeFn, subscriptionLogsToBeFn } from 'rxjs/internal/testing/TestScheduler';
import { SubscriptionLog } from './log-subscriptions';
import { AssertDeepEqualFn } from './marbles-helpers-types';
interface ContextualFlushableTest {
ready: boolean;
actual?: any[];
expected?: any[];
context?: any;
}
interface ExpectObservableResult<T> {
toBe: observableToBeFn;
toEqual: (other: Observable<T>) => void;
}
export declare class ContextualTestScheduler extends TestScheduler {
assertDeepEqual: AssertDeepEqualFn;
constructor(assertDeepEqual: AssertDeepEqualFn);
expectObservable<T>(observable: Observable<T>, subscriptionMarbles?: string, context?: any): ExpectObservableResult<T>;
expectSubscriptions(actualSubscriptionLogs: SubscriptionLog[], context?: any): {
toBe: subscriptionLogsToBeFn;
};
flush(): void;
protected get contextualFlushTests(): ContextualFlushableTest[];
protected set contextualFlushTests(flushTests: ContextualFlushableTest[]);
protected get currentFlushTest(): ContextualFlushableTest;
}
export {};