May 7, 2016 TestScheduler RxSwiftにはVirtualTimeSchedulerというSchedulerがあって、仮想的な時間でイベントストリームを扱えます。仮想的な時間というとなんだか難しそうですが、要は時間を自分で操作できるSchedulerということです。 RxSwiftのテストライブラリのRxTestsには、TestSchedulerというSchedulerも用意されています。これはVirtualTimeSchedulerにテスト向けの機能をつけたもので、イベントを記録できたりします。記録したイベントはXCTAssertEqual(_:_:)で検証できるので、どの時刻にどの値が来くるかテストできるというわけです。 func test() { let scheduler = TestScheduler(initialClock: 0) let obser
![TestSchedulerとSessionAdapterTypeを使った仮想時間上のテスト](https://cdn-ak-scissors.b.st-hatena.com/image/square/48da192f3c84c8024b901bd6e52fd552dce0c935/height=288;version=1;width=512/https%3A%2F%2Fblog.ishkawa.org%2Fassets%2Fmisc%2Fblank.png)