我有一个包装器类AwsS3Bucket
,在调用该类时,它返回源Source[ByteString, NotUsed]
。在我的单元测试用例中,我模拟了此客户端并执行了必要的断言。
val source = Source.fromIterator(() => List(ByteString("some string")).toIterator)
when(awsS3Bucket.getSource(any[String])).thenReturn(source)
但是,现在我要测试错误情况,其中我想让getSource
方法引发异常。我尝试了以下代码,
val error = new RuntimeException("error in source")
when(awsS3Bucket.getSource(any[String])).thenReturn(error)
但是它给了我一个编译问题,说那是>>
Cannot resolve overloaded method thenReturn
任何人都可以让我知道在akka流中的Source中返回异常的正确方法。
我有一个包装器类AwsS3Bucket,当调用该类时,将返回源Source [ByteString,NotUsed]。在我的单元测试用例中,我模拟了此客户端并执行了必要的断言。 val source = ...
您必须使用thenThrow(new RuntimeException("error in source"))
存根Exception
。