使用 streams testkit 测试 Akka Streams divertTo
Testing Akka Streams divertTo with streams testkit
我有一个由多个流程组成的图表,每个流程 returns 一个 Either
一些错误或实际结果。该代码使用 divertTo
以便将任何 Lefts
发送到与快乐路径下游接收器不同的接收器。
我遇到的问题是,在使用 Akka Streams 测试包时,我无法找到一种方法来探测 divertTo
调用中使用的接收器。我可以很好地探测快乐路径接收器,但我真的需要找到一种方法来测试不太快乐的路径以证明我的流程正在运行。
有人在使用 streams testkit 之前做过这类事情吗?
The problem I am having is that...I can't find a way to probe the sink used in the divertTo
call....Has anybody done this type of thing before using the streams testkit?
来自上述规范:
"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()
}
我有一个由多个流程组成的图表,每个流程 returns 一个 Either
一些错误或实际结果。该代码使用 divertTo
以便将任何 Lefts
发送到与快乐路径下游接收器不同的接收器。
我遇到的问题是,在使用 Akka Streams 测试包时,我无法找到一种方法来探测 divertTo
调用中使用的接收器。我可以很好地探测快乐路径接收器,但我真的需要找到一种方法来测试不太快乐的路径以证明我的流程正在运行。
有人在使用 streams testkit 之前做过这类事情吗?
The problem I am having is that...I can't find a way to probe the sink used in the
divertTo
call....Has anybody done this type of thing before using the streams testkit?
来自上述规范:
"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()
}