From 859d74279a41ff7aa1672a02e634120cdfd4c4e7 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sat, 12 Jul 2025 15:53:33 +0900 Subject: [PATCH] [ruby/uri] More tests for `check_to` https://github.com/ruby/uri/commit/b1b5f9a476 --- test/uri/test_mailto.rb | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/test/uri/test_mailto.rb b/test/uri/test_mailto.rb index e7c04ef068..31adae2087 100644 --- a/test/uri/test_mailto.rb +++ b/test/uri/test_mailto.rb @@ -165,6 +165,45 @@ class URI::TestMailTo < Test::Unit::TestCase assert_raise(URI::InvalidComponentError) do u.to = 'n.@invalid.email' end + + # Invalid host emails + assert_raise(URI::InvalidComponentError) do + u.to = 'a@.invalid.email' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid.email.' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid..email' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@-invalid.email' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid-.email' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid.-email' + end + + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid.email-' + end + + u.to = 'a@'+'invalid'.ljust(63, 'd')+'.email' + assert_raise(URI::InvalidComponentError) do + u.to = 'a@'+'invalid'.ljust(64, 'd')+'.email' + end + + u.to = 'a@invalid.'+'email'.rjust(63, 'e') + assert_raise(URI::InvalidComponentError) do + u.to = 'a@invalid.'+'email'.rjust(64, 'e') + end end def test_to_s