aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/date_ext_test.rb
diff options
context:
space:
mode:
authorJay Pignata <john.pignata@gmail.com>2009-08-31 13:02:19 -0500
committerJoshua Peek <josh@joshpeek.com>2009-08-31 13:02:19 -0500
commit7316d029e60f5d531b35af9e66d233ea19e4f240 (patch)
tree1a93425e44c9feb13ef2049c8b99aa2924a131f2 /activesupport/test/core_ext/date_ext_test.rb
parent80989437dc1502f9194b0600941b6d70a3efa3b2 (diff)
downloadrails-7316d029e60f5d531b35af9e66d233ea19e4f240.tar.gz
rails-7316d029e60f5d531b35af9e66d233ea19e4f240.tar.bz2
rails-7316d029e60f5d531b35af9e66d233ea19e4f240.zip
Duplicating the options hash in Date#advance to prevent modification of the original [#1133 state:resolved]
Signed-off-by: Joshua Peek <josh@joshpeek.com>
Diffstat (limited to 'activesupport/test/core_ext/date_ext_test.rb')
-rw-r--r--activesupport/test/core_ext/date_ext_test.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/date_ext_test.rb b/activesupport/test/core_ext/date_ext_test.rb
index 8a7bae5fc6..18422d68bc 100644
--- a/activesupport/test/core_ext/date_ext_test.rb
+++ b/activesupport/test/core_ext/date_ext_test.rb
@@ -251,6 +251,12 @@ class DateExtCalculationsTest < Test::Unit::TestCase
Time.zone_default = nil
end
+ def test_date_advance_should_not_change_passed_options_hash
+ options = { :years => 3, :months => 11, :days => 2 }
+ Date.new(2005,2,28).advance(options)
+ assert_equal({ :years => 3, :months => 11, :days => 2 }, options)
+ end
+
protected
def with_env_tz(new_tz = 'US/Eastern')
old_tz, ENV['TZ'] = ENV['TZ'], new_tz