我的代码如下:
val fakeExpiredCertificate = mock[Option[X509Certificate]]
println((fakeExpiredCertificate.nonEmpty))
println((fakeValidCertificate.isEmpty))
两个print语句在scala中返回false。
我的目标是在单元测试中检查不是mock[Option[X509Certificate]]
。
答案 0 :(得分:1)
当您使用模拟时,您需要通过告诉它要响应函数调用返回哪些值来对其进行预编程。取决于您正在使用的模拟框架,您需要告诉它Option
在您nonEmpty
或isEmpty
时可以返回的值。
话虽如此,如果您正在尝试测试接受Option[X509Certificate]
的功能并且您想测试它如何处理无,您可以使用值None
来调用它。我不确定你要完成什么,但很少需要嘲笑简单的值(如整数,字符串或任何Option[T]
的{{1}})。