You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
3.2 KiB
71 lines
3.2 KiB
11 months ago
|
From a1124dc162810f86cb0bff58cde24064cfc561bc Mon Sep 17 00:00:00 2001
|
||
|
From: nagachika <nagachika@ruby-lang.org>
|
||
|
Date: Fri, 9 Dec 2022 21:11:47 +0900
|
||
|
Subject: [PATCH] merge revision(s) 58cc3c9f387dcf8f820b43e043b540fa06248da3:
|
||
|
[Backport #19187]
|
||
|
|
||
|
[Bug #19187] Fix for tzdata-2022g
|
||
|
|
||
|
---
|
||
|
test/ruby/test_time_tz.rb | 21 +++++++++++++++------
|
||
|
1 file changed, 15 insertions(+), 6 deletions(-)
|
||
|
---
|
||
|
test/ruby/test_time_tz.rb | 21 +++++++++++++++------
|
||
|
1 files changed, 15 insertions(+), 6 deletions(-)
|
||
|
|
||
|
diff --git a/test/ruby/test_time_tz.rb b/test/ruby/test_time_tz.rb
|
||
|
index b6785f336028d..939f218ed4d10 100644
|
||
|
--- a/test/ruby/test_time_tz.rb
|
||
|
+++ b/test/ruby/test_time_tz.rb
|
||
|
@@ -6,9 +6,9 @@ class TestTimeTZ < Test::Unit::TestCase
|
||
|
has_lisbon_tz = true
|
||
|
force_tz_test = ENV["RUBY_FORCE_TIME_TZ_TEST"] == "yes"
|
||
|
case RUBY_PLATFORM
|
||
|
- when /linux/
|
||
|
+ when /darwin|linux/
|
||
|
force_tz_test = true
|
||
|
- when /darwin|freebsd/
|
||
|
+ when /freebsd|openbsd/
|
||
|
has_lisbon_tz = false
|
||
|
force_tz_test = true
|
||
|
end
|
||
|
@@ -94,6 +94,9 @@ def group_by(e, &block)
|
||
|
CORRECT_KIRITIMATI_SKIP_1994 = with_tz("Pacific/Kiritimati") {
|
||
|
Time.local(1994, 12, 31, 0, 0, 0).year == 1995
|
||
|
}
|
||
|
+ CORRECT_SINGAPORE_1982 = with_tz("Asia/Singapore") {
|
||
|
+ "2022g" if Time.local(1981, 12, 31, 23, 59, 59).utc_offset == 8*3600
|
||
|
+ }
|
||
|
|
||
|
def time_to_s(t)
|
||
|
t.to_s
|
||
|
@@ -139,9 +142,12 @@ def test_america_managua
|
||
|
|
||
|
def test_asia_singapore
|
||
|
with_tz(tz="Asia/Singapore") {
|
||
|
- assert_time_constructor(tz, "1981-12-31 23:59:59 +0730", :local, [1981,12,31,23,59,59])
|
||
|
- assert_time_constructor(tz, "1982-01-01 00:30:00 +0800", :local, [1982,1,1,0,0,0])
|
||
|
- assert_time_constructor(tz, "1982-01-01 00:59:59 +0800", :local, [1982,1,1,0,29,59])
|
||
|
+ assert_time_constructor(tz, "1981-12-31 23:29:59 +0730", :local, [1981,12,31,23,29,59])
|
||
|
+ if CORRECT_SINGAPORE_1982
|
||
|
+ assert_time_constructor(tz, "1982-01-01 00:00:00 +0800", :local, [1981,12,31,23,30,00])
|
||
|
+ assert_time_constructor(tz, "1982-01-01 00:00:00 +0800", :local, [1982,1,1,0,0,0])
|
||
|
+ assert_time_constructor(tz, "1982-01-01 00:29:59 +0800", :local, [1982,1,1,0,29,59])
|
||
|
+ end
|
||
|
assert_time_constructor(tz, "1982-01-01 00:30:00 +0800", :local, [1982,1,1,0,30,0])
|
||
|
}
|
||
|
end
|
||
|
@@ -364,8 +370,11 @@ def self.gen_zdump_test(data)
|
||
|
America/Managua Wed Jan 1 04:59:59 1997 UTC = Tue Dec 31 23:59:59 1996 EST isdst=0 gmtoff=-18000
|
||
|
America/Managua Wed Jan 1 05:00:00 1997 UTC = Tue Dec 31 23:00:00 1996 CST isdst=0 gmtoff=-21600
|
||
|
Asia/Singapore Sun Aug 8 16:30:00 1965 UTC = Mon Aug 9 00:00:00 1965 SGT isdst=0 gmtoff=27000
|
||
|
-Asia/Singapore Thu Dec 31 16:29:59 1981 UTC = Thu Dec 31 23:59:59 1981 SGT isdst=0 gmtoff=27000
|
||
|
+Asia/Singapore Thu Dec 31 15:59:59 1981 UTC = Thu Dec 31 23:29:59 1981 SGT isdst=0 gmtoff=27000
|
||
|
Asia/Singapore Thu Dec 31 16:30:00 1981 UTC = Fri Jan 1 00:30:00 1982 SGT isdst=0 gmtoff=28800
|
||
|
+End
|
||
|
+ gen_zdump_test <<'End' if CORRECT_SINGAPORE_1982
|
||
|
+Asia/Singapore Thu Dec 31 16:00:00 1981 UTC = Fri Jan 1 00:00:00 1982 SGT isdst=0 gmtoff=28800
|
||
|
End
|
||
|
gen_zdump_test CORRECT_TOKYO_DST_1951 ? <<'End' + (CORRECT_TOKYO_DST_1951 < "2018f" ? <<'2018e' : <<'2018f') : <<'End'
|
||
|
Asia/Tokyo Sat May 5 14:59:59 1951 UTC = Sat May 5 23:59:59 1951 JST isdst=0 gmtoff=32400
|