Rails assert_equal не всегда работает с DateTimes

Я получаю сообщение об ошибке в моем функциональном тесте при использовании assert_equal :

  1) [31mFailure[0m:
test_should_allow_dealer_to_extend_offer:21
<Thu, 14 Apr 2011 23:59:59 PDT -07:00> expected but was
<Thu, 14 Apr 2011 23:59:59 PDT -07:00>.

Обратите внимание, что оба показывают одно и то же время и часовой пояс. Я проверил, они одного типа (ActiveSupport :: TimeWithZone). Так почему же они не равны?

Это стандартное поле DateTime в базе данных, которое, я думаю, хранится только до второго правого угла?

Я могу передать его, преобразовав их в целые числа или используя ] assert_in_delta с диапазоном 1 минута. Но было просто интересно.

Кстати, это Rails 2.3.8 и MySQL.

7
задан dukedave 17 June 2014 в 21:44
поделиться