From: nobu@... Date: 2019-03-21T01:49:01+00:00 Subject: [ruby-core:91908] [Ruby trunk Bug#15712] DateTime#=== should be defined and compare date and time instead of just the date Issue #15712 has been updated by nobu (Nobuyoshi Nakada). Status changed from Open to Feedback What version of DateTime do you use? With the trunk I got: ```ruby require 'date' dt1 = DateTime.new(2001, 2, 3) dt2 = DateTime.new(2001, 2, 3, 12) p dt1 === dt2 #=> true p dt1 == dt2 #=> false ``` ---------------------------------------- Bug #15712: DateTime#=== should be defined and compare date and time instead of just the date https://bugs.ruby-lang.org/issues/15712#change-77237 * Author: localhostdotdev (localhost .dev) * Status: Feedback * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.7.0dev (2019-03-18 trunk 67296) [x86_64-darwin17] * Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN ---------------------------------------- DateTime#=== is inherited from Date#=== without overwriting the #=== method, this leads to DateTime#=== comparing only dates and ignore the time part. ``` DateTime.new(2001, 2, 3) === DateTime.new(2001, 2, 3, 12) => false ``` I think this is not the expected behavior but existing code might rely on this. Date#===: https://ruby-doc.org/stdlib-2.1.9/libdoc/date/rdoc/Date.html#method-i-3D-3D-3D Source: https://medium.com/@dvandersluis/an-rspec-time-issue-and-its-not-about-timezones-a89bbd167b86 -- https://bugs.ruby-lang.org/ Unsubscribe: