summaryrefslogtreecommitdiff
path: root/test/ruby/test_time.rb
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2023-01-02 23:23:53 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2023-01-02 23:29:19 +0900
commit5be0d42d2c4dc765230c76738289560f9ee37f09 (patch)
tree82e467dc44a7f195d618463ed7420de01f52b7d5 /test/ruby/test_time.rb
parent291a4098cf649c027cb50c16b872455f26ad1dfb (diff)
[Bug #19296] Precheck bits of time components
Diffstat (limited to 'test/ruby/test_time.rb')
-rw-r--r--test/ruby/test_time.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/ruby/test_time.rb b/test/ruby/test_time.rb
index d85e1f89d1..38c1af6901 100644
--- a/test/ruby/test_time.rb
+++ b/test/ruby/test_time.rb
@@ -99,30 +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()