测试 Akka Stream 不产生值

Testing that an Akka Stream doesn't produce values

我是第一次使用 Akka Streams Testkit,并没有找到一个很好的模式来测试流是否会 不会 产生一个值,在时间 window.

这个有效:

intercept[AssertionError] {   // '.expectNext' throws this
    src.request(1)
      .expectNext(100 millis)   // expect no entries in ... some time
}

.expectNext 如果在时间段内没有值,则抛出 AssertionError,但这感觉很不对。我真的不想检查异常,我真的不想知道 .expectNext 抛出什么。

类似于:

src.request(1)
  .expectNothing(100 millis)

您可以使用

def expectNoMsg(remaining: FiniteDuration)

docs.

中的用法示例