Там в главе о тестировании RxJS цепей в RxJS 4 документации, но принципы применяются к RxJS 5, а также: https://github.com/Reactive-Extensions/RxJS/blob/master/doc/gettingstarted/testing.md
Если вы хотите модульного тестирования RxJS пользовательских операторов или операторов цепей есть официальная документация: https://github.com/ReactiveX/rxjs/blob/master/doc/writing-marble-tests.md (Однако в этом документе не указывается, где вы можете импортировать функции, перечисленные там в вашем собственном коде).
Кроме того, посмотрите, как тестируется RxJS. Например, testing map()
operator (кстати, это тесты mocha
). Обратите внимание на то, что с помощью этой короткой нотации cold('--1--2--3--|')
сделаны горячие и холодные наблюдения, а затем сравниваются с ожидаемым '--x--y--z--|'
с использованием expectObservable
that comes from TestScheduler.
Если вы хотите использовать также сокращенную нотацию с cold(...)
, hot(...)
и другими вы должны захватить исходный код, скомпилировать его с npm run build_test
, а затем использовать те же параметры для mocha
как оригинал. See package.json
и значения по умолчанию для mocha
in default.opts
. Сейчас я не знаю о каком-либо простом решении.
Короткие обозначения просто упрощают и читают, но на самом деле это не нужно. Вы можете использовать регулярные тесты Observables (TestScheduler
, ColdObservable
и HotObservable
) уже с тех пор, как они являются частью стандартного пакета rxjs
. https://github.com/ReactiveX/rxjs/tree/master/src/testing (node_modules/rxjs/testing
)
Также см: How to debug Observable values in Angualr2/Typescript?
Эй! Спасибо за ваш ответ! Возможно ли каким-то образом сделать rxjs, работающим с реальными событиями элемента? Я имею в виду. Я вызову некоторые события в элементе, и я ожидаю, что наблюдаемый RxJS, сгенерированный из 'Observable.fromEvent', испустит некоторые данные. Возможно ли это как-то? –