我有一个由多个流组成的图,每个流都返回某个错误或实际结果的Either
。该代码使用divertTo
来将任何Lefts
发送到与快乐路径下游接收器不同的接收器。
我遇到的问题是,在使用Akka Streams测试工具包时,我找不到一种方法来探测divertTo
调用中使用的接收器。我可以很好地探测“快乐路径”下沉,但我真的需要找到一种方法来测试不太快乐的路径,以证明我的流程正在工作。
在使用流测试包之前,有人做过这种事情吗?
答案 0 :(得分:1)
我遇到的问题是...我找不到一种方法来探究
divertTo
调用中使用的接收器...。有人在使用流测试包之前做了这种事情吗?
根据上述规范:
"divertTo must send matching elements to the sink" in assertAllStagesStopped {
val odd = TestSubscriber.probe[Int]()
val even = TestSubscriber.probe[Int]()
Source(1 to 2).divertTo(Sink.fromSubscriber(odd), _ % 2 != 0).to(Sink.fromSubscriber(even)).run()
even.request(1)
even.expectNoMessage(1.second)
odd.request(1)
odd.expectNext(1)
even.expectNext(2)
odd.expectComplete()
even.expectComplete()
}