我的时间规格不合格。
据我所知,时间是从纪元算起的秒数,但如果对象表示足够接近,我希望此规范通过。
例如:
expect( @model.end_date ).to eq end_date
expected: Wed, 08 Feb 2017 20:13:30 UTC +00:00
got: Wed, 08 Feb 2017 20:13:30 UTC +00:00
有没有人对测试时间有任何建议,以便稍微抵消不会导致测试失败?
答案 0 :(得分:2)
您可以使用RSpec的内置be_within
matcher,它也可以用于浮点数和其他容易出现轻微差异的数据类型:
expect(@model.end_date).to be_within(1.second).of(end_date)
答案 1 :(得分:0)
我会离开 {Id:1 Name:Marwan Career:{Employer:mycompany Salary:100}}
方法,但使用 Timecop - https://www.rubydoc.info/gems/liangzan-timecop/Timecop.freeze 冻结规范的时间。使用 eq
并不能保证规范会通过。