2015-09-10 2 views
1

Я пытаюсь создать тестовый пример, который проверяет, являются ли два потока одинаковыми. Zip может использоваться для проверки элементов значения одинаковыми, но это не помогает, если один поток является неправильной длиной. Любые идеи о том, как подойти к этому?Утверждать, что два потока одинаковы

ответ

3

Для этого есть оператор: sequenceEqual.

Возвращает

(Наблюдаемое): наблюдаемая последовательность, которая содержит один элемент, который указывает, является ли обе последовательности имеют одинаковую длину и их соответствующие элементы равны в соответствии с заданным компаратором равенства.

Вот простой пример, показывающий проверку равенства по длине.

var log = console.log.bind(console); 

Rx.Observable.of(1, 2, 3) 
      .sequenceEqual(Rx.Observable.of(1, 2, 3)) 
      .subscribe(log); // logs true 

Rx.Observable.of(1, 2, 3) 
      .sequenceEqual(Rx.Observable.of(1, 2)) 
      .subscribe(log); // logs false 
Смежные вопросы