aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--activesupport/CHANGELOG2
-rw-r--r--activesupport/lib/active_support/core_ext/time/zones.rb13
-rw-r--r--activesupport/lib/active_support/time_with_zone.rb5
-rw-r--r--activesupport/test/core_ext/time_with_zone_test.rb46
4 files changed, 17 insertions, 49 deletions
diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG
index f72484d36d..ba28b46134 100644
--- a/activesupport/CHANGELOG
+++ b/activesupport/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Removing unneeded #change_time_zone method from Time, DateTime and TimeWithZone [Geoff Buesing]
+
* TimeZone #local and #now correctly enforce DST rules [Geoff Buesing]
* TimeWithZone instances correctly enforce DST rules. Adding TimeZone#period_for_utc [Geoff Buesing]
diff --git a/activesupport/lib/active_support/core_ext/time/zones.rb b/activesupport/lib/active_support/core_ext/time/zones.rb
index 1fab89be48..5d8e085ef6 100644
--- a/activesupport/lib/active_support/core_ext/time/zones.rb
+++ b/activesupport/lib/active_support/core_ext/time/zones.rb
@@ -56,19 +56,6 @@ module ActiveSupport #:nodoc:
def in_current_time_zone
::Time.zone ? in_time_zone(::Time.zone) : self
end
-
- # Replaces the existing zone; leaves time values intact. Examples:
- #
- # t = Time.utc(2000) # => Sat Jan 01 00:00:00 UTC 2000
- # t.change_time_zone('Alaska') # => Sat, 01 Jan 2000 00:00:00 AKST -09:00
- # t.change_time_zone('Hawaii') # => Sat, 01 Jan 2000 00:00:00 HST -10:00
- #
- # Note the difference between this method and #in_time_zone: #in_time_zone does a calculation to determine
- # the simultaneous time in the supplied zone, whereas #change_time_zone does no calculation; it just
- # "dials in" a new time zone for +self+
- def change_time_zone(zone)
- ActiveSupport::TimeWithZone.new(nil, get_zone(zone), self)
- end
private
def get_zone(time_zone)
diff --git a/activesupport/lib/active_support/time_with_zone.rb b/activesupport/lib/active_support/time_with_zone.rb
index 0f5d0a2ee3..008c7f151b 100644
--- a/activesupport/lib/active_support/time_with_zone.rb
+++ b/activesupport/lib/active_support/time_with_zone.rb
@@ -41,11 +41,6 @@ module ActiveSupport
utc.in_current_time_zone
end
- # Changes the time zone without converting the time
- def change_time_zone(new_zone)
- time.change_time_zone(new_zone)
- end
-
# Returns a Time.local() instance of the simultaneous time in your system's ENV['TZ'] zone
def localtime
utc.getlocal
diff --git a/activesupport/test/core_ext/time_with_zone_test.rb b/activesupport/test/core_ext/time_with_zone_test.rb
index 74fbc56595..a3566796a7 100644
--- a/activesupport/test/core_ext/time_with_zone_test.rb
+++ b/activesupport/test/core_ext/time_with_zone_test.rb
@@ -36,12 +36,6 @@ uses_tzinfo 'TimeWithZoneTest' do
end
end
- def test_change_time_zone
- silence_warnings do # silence warnings raised by tzinfo gem
- assert_equal ActiveSupport::TimeWithZone.new(nil, TimeZone['Alaska'], Time.utc(1999, 12, 31, 19)), @twz.change_time_zone('Alaska')
- end
- end
-
def test_utc?
assert_equal false, @twz.utc?
assert_equal true, ActiveSupport::TimeWithZone.new(Time.utc(2000), TimeZone['UTC']).utc?
@@ -53,8 +47,10 @@ uses_tzinfo 'TimeWithZoneTest' do
end
def test_dst?
- assert_equal false, @twz.dst?
- assert_equal true, ActiveSupport::TimeWithZone.new(Time.utc(2000, 6), @time_zone).dst?
+ silence_warnings do # silence warnings raised by tzinfo gem
+ assert_equal false, @twz.dst?
+ assert_equal true, ActiveSupport::TimeWithZone.new(Time.utc(2000, 6), @time_zone).dst?
+ end
end
def test_zone
@@ -295,30 +291,18 @@ uses_tzinfo 'TimeWithZoneTest' do
end
def test_in_current_time_zone
- Time.use_zone 'Alaska' do
- assert_equal 'Fri, 31 Dec 1999 15:00:00 AKST -09:00', @t.in_current_time_zone.inspect
- assert_equal 'Fri, 31 Dec 1999 15:00:00 AKST -09:00', @dt.in_current_time_zone.inspect
- end
- Time.use_zone 'Hawaii' do
- assert_equal 'Fri, 31 Dec 1999 14:00:00 HST -10:00', @t.in_current_time_zone.inspect
- assert_equal 'Fri, 31 Dec 1999 14:00:00 HST -10:00', @dt.in_current_time_zone.inspect
- end
- Time.use_zone nil do
- assert_equal @t, @t.in_current_time_zone
- assert_equal @dt, @dt.in_current_time_zone
- end
- end
-
- def test_change_time_zone
silence_warnings do # silence warnings raised by tzinfo gem
- Time.use_zone 'Eastern Time (US & Canada)' do # Time.zone will not affect #change_time_zone(zone)
- assert_equal 'Sat, 01 Jan 2000 00:00:00 AKST -09:00', @t.change_time_zone('Alaska').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 AKST -09:00', @dt.change_time_zone('Alaska').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 HST -10:00', @t.change_time_zone('Hawaii').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 HST -10:00', @dt.change_time_zone('Hawaii').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 UTC +00:00', @t.change_time_zone('UTC').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 UTC +00:00', @dt.change_time_zone('UTC').inspect
- assert_equal 'Sat, 01 Jan 2000 00:00:00 AKST -09:00', @t.change_time_zone(-9.hours).inspect
+ Time.use_zone 'Alaska' do
+ assert_equal 'Fri, 31 Dec 1999 15:00:00 AKST -09:00', @t.in_current_time_zone.inspect
+ assert_equal 'Fri, 31 Dec 1999 15:00:00 AKST -09:00', @dt.in_current_time_zone.inspect
+ end
+ Time.use_zone 'Hawaii' do
+ assert_equal 'Fri, 31 Dec 1999 14:00:00 HST -10:00', @t.in_current_time_zone.inspect
+ assert_equal 'Fri, 31 Dec 1999 14:00:00 HST -10:00', @dt.in_current_time_zone.inspect
+ end
+ Time.use_zone nil do
+ assert_equal @t, @t.in_current_time_zone
+ assert_equal @dt, @dt.in_current_time_zone
end
end
end