diff options
author | Geoff Buesing <gbuesing@gmail.com> | 2008-02-10 20:35:47 +0000 |
---|---|---|
committer | Geoff Buesing <gbuesing@gmail.com> | 2008-02-10 20:35:47 +0000 |
commit | 8ad5a29cef38cd95aac6553357fc32a6e9e7b411 (patch) | |
tree | 772caf2493a04be6cdf901c8a1bcd05862281038 /activesupport | |
parent | 8831180b152007c52abb2a03bb351ebc7079c4c4 (diff) | |
download | rails-8ad5a29cef38cd95aac6553357fc32a6e9e7b411.tar.gz rails-8ad5a29cef38cd95aac6553357fc32a6e9e7b411.tar.bz2 rails-8ad5a29cef38cd95aac6553357fc32a6e9e7b411.zip |
TimeWithZone #in_time_zone returns +self+ if zone argument is the same as #time_zone
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8853 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport')
-rw-r--r-- | activesupport/CHANGELOG | 2 | ||||
-rw-r--r-- | activesupport/lib/active_support/time_with_zone.rb | 1 | ||||
-rw-r--r-- | activesupport/test/core_ext/time_with_zone_test.rb | 4 |
3 files changed, 7 insertions, 0 deletions
diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 6d930c773b..ec5c69873b 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* TimeWithZone #in_time_zone returns +self+ if zone argument is the same as #time_zone [Geoff Buesing] + * Adding TimeWithZone #to_a, #to_f, #to_i, #httpdate, #rfc2822 [Geoff Buesing] * Pruning unneeded TimeWithZone#change_time_zone_to_current [Geoff Buesing] diff --git a/activesupport/lib/active_support/time_with_zone.rb b/activesupport/lib/active_support/time_with_zone.rb index 517b2bac7f..13f968386a 100644 --- a/activesupport/lib/active_support/time_with_zone.rb +++ b/activesupport/lib/active_support/time_with_zone.rb @@ -29,6 +29,7 @@ module ActiveSupport # Returns the simultaneous time in the specified zone def in_time_zone(new_zone) + return self if time_zone == new_zone utc.in_time_zone(new_zone) end diff --git a/activesupport/test/core_ext/time_with_zone_test.rb b/activesupport/test/core_ext/time_with_zone_test.rb index 13ebfa644c..a286fda4e2 100644 --- a/activesupport/test/core_ext/time_with_zone_test.rb +++ b/activesupport/test/core_ext/time_with_zone_test.rb @@ -25,6 +25,10 @@ uses_tzinfo 'TimeWithZoneTest' do def test_in_time_zone assert_equal ActiveSupport::TimeWithZone.new(@utc, TimeZone['Alaska']), @twz.in_time_zone('Alaska') end + + def test_in_time_zone_with_new_zone_equal_to_old_zone_does_not_create_new_object + assert_equal @twz.object_id, @twz.in_time_zone(TimeZone['Eastern Time (US & Canada)']).object_id + end def test_in_current_time_zone Time.use_zone 'Alaska' do |