2016-05-25 81 views
1

我正在生成一个值,并且我知道它可能的值。我想写这个Scalatest Matcher - 检查单个值是否存在于一组值中

val myInt = someFunction() 
myInt shouldBe oneOf (1, 2, 3) 

然而,这似乎并没有为我工作作为Scalatest 3 M15的。我的解决方法是

List(myValue) should contain atMostOneOf (1, 2, 3) 

这是一个更多的混淆阅读和理解。

有没有办法做到我想要的?这似乎是一种常见的情况。

+0

你什么错误? – Ashalynd

+0

它编译但我得到的测试失败'1不等于oneOf(1,2,3)' –

+0

您确定myInt的类型是否正确? – Det

回答

2

oneOf只能用于比较集合的内容。您可以使用Some作为一个简单的元素集合:

Some(myInt) should contain oneOf (1, 2, 3) 

或者:

myInt should (equal(1) or equal(2) or equal(3)) 
+0

我想后面的选项至少不会让人困惑。谢谢。 –

相关问题