【发布时间】:2016-06-18 15:50:02
【问题描述】:
我在测试中有一个如下所示的断言:
assert_equals object.sent_at, Time.now
当我运行这个测试时,我不断收到类似这样的错误
--- expected
+++ actual
@@ -1 +1 @@
-Fri, 04 Mar 2016 18:57:47 UTC +00:00
+Fri, 04 Mar 2016
我已经尝试了一些组合来使这个测试通过。
我的实际代码用Time.now 更新了sent_at 值,但它的格式并不完美。它很近,但不足以通过。我怎样才能使这个测试通过。
以下是我在断言中尝试过的一些组合:
Time.now.utc
Date.today
Time.now
还有很多 to_time 、 to_datetime 等。我怎样才能使测试通过?
【问题讨论】:
-
看来
object.sent_at正在返回Date,没有时间显示您的“实际”结果。所以我不认为针对Time对象进行测试是正确的方法。如果你做了assert_equals object.sent_at.to_db, Date.today有帮助吗?我很想说assert_equals object.sent_at, Date.today应该足够好,但看来您可能已经尝试过了。
标签: ruby-on-rails datetime minitest