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: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>