2014-10-28 101 views
5

我有方法返回预定义数组中的随机值(即:[ 'value1', 'value2'])。 我应该如何测试rspec?rspec - 匹配器的选择

我想这样做:

expect(FooClass.new.value).to be_in ['value1', 'value2'] 

任何方式做到这一点?谢谢。

回答

5

使用此

expect(['value1', 'value2']).to include(FooClass.new.value) 

或者一个简单的布尔匹配

expect(['value1', 'value2'].include? FooClass.new.value).to be true 
+0

倾向于第一种版本(即'。为包括(...)')。当测试失败时,它会显示不在列表中的值。第二个版本只会报告“false”不是“真”,这不是很有帮助。 – Mark 2016-06-27 19:44:47