From 90048176ccde574cb315437faecf468f45370dfd Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 20 Oct 2017 01:03:18 +0000 Subject: Make Time.parse respect timezone offset seconds DateTime.parse handles them correctly, and DateTime.parse.to_time results in the correct time. Time.parse doesn't handle them correctly because Time.zone_offset uses a different regexp that only considers hours and minutes, not seconds. [ruby-core:83400] [Bug #14034] From: Jeremy Evans git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/test_time.rb | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'test') diff --git a/test/test_time.rb b/test/test_time.rb index 398ab7279b..9d7c976abf 100644 --- a/test/test_time.rb +++ b/test/test_time.rb @@ -343,6 +343,13 @@ class TestTimeExtension < Test::Unit::TestCase # :nodoc: Time.parse("2000-01-01T00:00:00+11:00", nil)) end + def test_parse_offset_hour_minute_second + t = Time.at(-100000000000).utc + assert_equal(t, Time.parse("1200-02-15 BC 14:13:20-00")) + assert_equal(t, Time.parse("1200-02-15 BC 14:13:20-00:00")) + assert_equal(t, Time.parse("1200-02-15 BC 14:13:20-00:00:00")) + end + def test_parse_leap_second t = Time.utc(1998,12,31,23,59,59) assert_equal(t, Time.parse("Thu Dec 31 23:59:59 UTC 1998")) -- cgit v1.2.3