From 52ea5ea9906c3a96c60a68e01b303672602a6832 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Wed, 18 Jan 2023 17:17:27 +0900 Subject: merge revision(s) 291a4098cf649c027cb50c16b872455f26ad1dfb,5be0d42d2c4dc765230c76738289560f9ee37f09: [Backport #19296] Add missing assertion --- test/ruby/test_time.rb | 3 +++ 1 file changed, 3 insertions(+) [Bug #19296] Precheck bits of time components --- test/ruby/test_time.rb | 15 +++++++++++++++ time.c | 14 ++++++++------ 2 files changed, 23 insertions(+), 6 deletions(-) --- test/ruby/test_time.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_time.rb b/test/ruby/test_time.rb index 8274dbbc83..38c1af6901 100644 --- a/test/ruby/test_time.rb +++ b/test/ruby/test_time.rb @@ -99,27 +99,45 @@ class TestTime < Test::Unit::TestCase assert_raise_with_message(ArgumentError, /two digits sec.*:9\b/) { Time.new("2020-12-25 00:56:9 +0900") } + assert_raise_with_message(ArgumentError, /sec out of range/) { + Time.new("2020-12-25 00:56:64 +0900") + } assert_raise_with_message(ArgumentError, /two digits min.*:056\b/) { Time.new("2020-12-25 00:056:17 +0900") } assert_raise_with_message(ArgumentError, /two digits min.*:5\b/) { Time.new("2020-12-25 00:5:17 +0900") } + assert_raise_with_message(ArgumentError, /min out of range/) { + Time.new("2020-12-25 00:64:17 +0900") + } assert_raise_with_message(ArgumentError, /two digits hour.*\b000\b/) { Time.new("2020-12-25 000:56:17 +0900") } assert_raise_with_message(ArgumentError, /two digits hour.*\b0\b/) { Time.new("2020-12-25 0:56:17 +0900") } + assert_raise_with_message(ArgumentError, /hour out of range/) { + Time.new("2020-12-25 33:56:17 +0900") + } assert_raise_with_message(ArgumentError, /two digits mday.*\b025\b/) { Time.new("2020-12-025 00:56:17 +0900") } + assert_raise_with_message(ArgumentError, /two digits mday.*\b5\b/) { + Time.new("2020-12-5 00:56:17 +0900") + } + assert_raise_with_message(ArgumentError, /mday out of range/) { + Time.new("2020-12-33 00:56:17 +0900") + } assert_raise_with_message(ArgumentError, /two digits mon.*\b012\b/) { Time.new("2020-012-25 00:56:17 +0900") } assert_raise_with_message(ArgumentError, /two digits mon.*\b1\b/) { Time.new("2020-1-25 00:56:17 +0900") } + assert_raise_with_message(ArgumentError, /mon out of range/) { + Time.new("2020-17-25 00:56:17 +0900") + } end def test_time_add() -- cgit v1.2.3