From 1bb1d096fbd5d5b79539aa5ff9bf53bca87fe686 Mon Sep 17 00:00:00 2001 From: naruse Date: Fri, 7 Dec 2012 02:55:35 +0000 Subject: * time.c (time_mdump): dump timezone string to private instance variable on marshaling. * time.c (time_mload): load timezone string from private instance variable named 'zone'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_time.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_time.rb b/test/ruby/test_time.rb index 094a5af68a..c4ffccedad 100644 --- a/test/ruby/test_time.rb +++ b/test/ruby/test_time.rb @@ -290,6 +290,21 @@ class TestTime < Test::Unit::TestCase assert_equal(29700, t2.utc_offset, bug) end + def test_marshal_zone + orig_zone = ENV['TZ'] + + t = Time.utc(2013, 2, 24) + assert_equal('UTC', t.zone) + assert_equal('UTC', Marshal.load(Marshal.dump(t)).zone) + + ENV['TZ'] = 'Asia/Tokyo' + t = Time.local(2013, 2, 24) + assert_equal('JST', Time.local(2013, 2, 24).zone) + assert_equal('JST', Marshal.load(Marshal.dump(t)).zone) + ensure + ENV['TZ'] = orig_zone + end + def test_marshal_to_s t1 = Time.new(2011,11,8, 0,42,25, 9*3600) t2 = Time.at(Marshal.load(Marshal.dump(t1))) -- cgit v1.2.3