withLatestFrom意外未继续播放

时间:2018-07-14 15:20:27

标签: rxjs5

我有一个rxjs流,该流在运行程序时有效,但在测试环境中不起作用。

基本上是使用Observable的时间间隔每5秒触发一次事件,但是我想保证自己的状态是BUFFERING,所以我从stateStream $中提取了最新的数据,stateStream $是我100%确信已经触发的另一个Observable,即使在我的测试环境。

这是流的代码:

Observable.interval(5)
  .withLatestFrom(stateStream$)
  .takeWhile(combined => combined[1].status === PLAYER_STATUS.BUFFERING)
  .map(([interval]) => (interval + 1) * heartbeat)
  .subscribe({
    next: (intervalDuration) => {
      // do thing
    },
    error: e => console.error('buf', 'buffering heartbeat', e),
    complete: () => console.log('buf', 'buffering heartbeat', 'complete'),
  })

因此,如果我拿走withLatestFrom行,则间隔会按预期触发。我已经在测试中的其他地方订阅了stateStream $,以验证它是否正在触发,即使是从我的测试函数中也是如此。只是不在设置此特定间隔的范围内

0 个答案:

没有答案