Rails4使用DateTime上的验证来获得should测试通过



以下测试:

  it { should have_valid(:date_time).when ("2014/April/15") }
  it { should_not have_valid(:date_time).when ("2014/April/15000") }
  it { should_not have_valid(:date_time).when ("2014/ZZZ/14") }
  it { should_not have_valid(:date_time).when(nil, '') }

以下两个没有通过:

  it { should_not have_valid(:date_time).when ("2014/April/15000") }
  it { should_not have_valid(:date_time).when ("2014/ZZZ/14") }

我收到了两者的错误消息argument out of range。在我的模型中,我有以下内容:

class Textmessage < ActiveRecord::Base
  validates :date_time, presence: true
end

我需要在验证中添加什么才能通过?

这是should的预期行为。当为DateTime列给定其中一个字符串时,Rails将引发异常,而不是在模型上设置错误。

相关内容

  • 没有找到相关文章

最新更新