4

我有一个使用 shoulda 的测试,但由于我不明白的原因而失败。知道解决方法是什么吗?为了测试目的,我对数组进行了硬编码。

我所有其他基于应该匹配器的测试都运行良好。

验证

validates_inclusion_of :status, :in => ["Active", "Closed"]

测试:

it { should ensure_inclusion_of(:status).in_array(["Active", "Closed"]) }

失败

Failure/Error: it { should ensure_inclusion_of(:status).in_array(["Active", "Closed"]) }
   ["Active", "Closed"] doesn't match array in validation
4

1 回答 1

3

查看该匹配器的源代码:

https://github.com/thoughtbot/should-matchers/blob/master/lib/should/matchers/active_model/ensure_inclusion_of_matcher.rb#L88

您是否有另一个验证可以防止 nil 或空白值:status

于 2013-03-24T14:19:19.370 回答