由于日期格式不同,测试失败
Test fails because of differences in date formats
下面的测试比较了两个日期。由于日期格式不同,测试失败。我怎样才能使这个测试工作?
expiration = Time.zone.now - 50.days
# some lines to update @organization with a new expiration
assert_equal @organization.exp, expiration
# puts @organization.exp => Mon, 16 Nov 2015
# puts expiration => Mon, 16 Nov 2015 14:22:39 CET +01:00
使用Time#to_date
方法,喜欢
assert_equal @organization.exp, expiration.to_date
@organization.exp
好像是Date
,但是expiration
不是:
expiration = Time.zone.now - 50.days
#=> Mon, 16 Nov 2015 14:36:06 CET +01:00
expiration.class
#=> ActiveSupport::TimeWithZone
要获取时区感知 Date
实例,您可以使用 Date#current
and alter it using DateAndTime::Calculations#days_ago
:
expiration = Date.current.days_ago(50)
#=> Mon, 16 Nov 2015
expiration.class
#=> Date
下面的测试比较了两个日期。由于日期格式不同,测试失败。我怎样才能使这个测试工作?
expiration = Time.zone.now - 50.days
# some lines to update @organization with a new expiration
assert_equal @organization.exp, expiration
# puts @organization.exp => Mon, 16 Nov 2015
# puts expiration => Mon, 16 Nov 2015 14:22:39 CET +01:00
使用Time#to_date
方法,喜欢
assert_equal @organization.exp, expiration.to_date
@organization.exp
好像是Date
,但是expiration
不是:
expiration = Time.zone.now - 50.days
#=> Mon, 16 Nov 2015 14:36:06 CET +01:00
expiration.class
#=> ActiveSupport::TimeWithZone
要获取时区感知 Date
实例,您可以使用 Date#current
and alter it using DateAndTime::Calculations#days_ago
:
expiration = Date.current.days_ago(50)
#=> Mon, 16 Nov 2015
expiration.class
#=> Date