diff options
author | Matthew Draper <matthew@trebex.net> | 2014-05-28 03:32:21 +0930 |
---|---|---|
committer | Matthew Draper <matthew@trebex.net> | 2014-05-28 03:32:21 +0930 |
commit | 086ee1cc1312d4679e32b6dc8e343548891af4fa (patch) | |
tree | 1d668a10823da293120e9a0200cfaf9b1b390493 /activesupport/test | |
parent | 6f9aff75a5e8cdfb92e425e433807ac2972df740 (diff) | |
parent | 0fb33f3fda3958865fb62969ea6898acf7016aaf (diff) | |
download | rails-086ee1cc1312d4679e32b6dc8e343548891af4fa.tar.gz rails-086ee1cc1312d4679e32b6dc8e343548891af4fa.tar.bz2 rails-086ee1cc1312d4679e32b6dc8e343548891af4fa.zip |
Merge pull request #12080 from ShayDavidson/fix_datetime_partial_dates
Added partial days support to `DateTime`'s `advance` method.
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/core_ext/date_time_ext_test.rb | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/date_time_ext_test.rb b/activesupport/test/core_ext/date_time_ext_test.rb index 0a40aeb96c..224172e39f 100644 --- a/activesupport/test/core_ext/date_time_ext_test.rb +++ b/activesupport/test/core_ext/date_time_ext_test.rb @@ -162,6 +162,12 @@ class DateTimeExtCalculationsTest < ActiveSupport::TestCase assert_equal DateTime.civil(2013,10,17,20,22,19), DateTime.civil(2005,2,28,15,15,10).advance(:years => 7, :months => 19, :weeks => 2, :days => 5, :hours => 5, :minutes => 7, :seconds => 9) end + def test_advance_partial_days + assert_equal DateTime.civil(2012,9,29,13,15,10), DateTime.civil(2012,9,28,1,15,10).advance(:days => 1.5) + assert_equal DateTime.civil(2012,9,28,13,15,10), DateTime.civil(2012,9,28,1,15,10).advance(:days => 0.5) + assert_equal DateTime.civil(2012,10,29,13,15,10), DateTime.civil(2012,9,28,1,15,10).advance(:days => 1.5, :months => 1) + end + def test_advanced_processes_first_the_date_deltas_and_then_the_time_deltas # If the time deltas were processed first, the following datetimes would be advanced to 2010/04/01 instead. assert_equal DateTime.civil(2010, 3, 29), DateTime.civil(2010, 2, 28, 23, 59, 59).advance(:months => 1, :seconds => 1) |