我看到对 Option 类型的支持,但是自定义案例类呢?
我有点想这样做:
result match {
case SuccessCase(values) => {
values.foo should be ("bar")
}
case FailureCase => // should fail test, but how to say this in ScalaTest?
}
我看到对 Option 类型的支持,但是自定义案例类呢?
我有点想这样做:
result match {
case SuccessCase(values) => {
values.foo should be ("bar")
}
case FailureCase => // should fail test, but how to say this in ScalaTest?
}
您可以故意使用 fail() 来使测试失败,例如 FailureCase => fail("err msg"),但我不确定我是否理解您所追求的。也许您可以显示更多代码或详细说明以澄清问题?
假设您想要的情况是,这可行DesiredCase
吗?
result match {
case DesiredCase(values) => {
values.foo should be ("bar")
}
case _ => {
fail("Not DesiredCase")
}
}
如果经常编写这些类型的测试,Bill Venners 还建议编写自定义匹配器:
https://groups.google.com/forum/?fromgroups#!msg/scalatest-users/4MemQiqLzao/_DsBTQWaqfwJ