From 52f6de41961d511e82826d6266441d91a92dcd59 Mon Sep 17 00:00:00 2001 From: Misaki Shioi Date: Thu, 23 Nov 2023 16:49:41 +0900 Subject: Replace SocketError with Socket::ResolutionError in rsock_raise_socket_error rsock_raise_socket_error is called only when getaddrinfo and getaddrname fail --- test/socket/test_addrinfo.rb | 4 ++-- test/socket/test_socket.rb | 14 +++++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) (limited to 'test/socket') diff --git a/test/socket/test_addrinfo.rb b/test/socket/test_addrinfo.rb index 832a1f8d05..c61764d76d 100644 --- a/test/socket/test_addrinfo.rb +++ b/test/socket/test_addrinfo.rb @@ -103,7 +103,7 @@ class TestSocketAddrinfo < Test::Unit::TestCase end def test_error_message - e = assert_raise_with_message(SocketError, /getaddrinfo/) do + e = assert_raise_with_message(Socket::ResolutionError, /getaddrinfo/) do Addrinfo.ip("...") end m = e.message @@ -357,7 +357,7 @@ class TestSocketAddrinfo < Test::Unit::TestCase ai = Addrinfo.unix("/testdir/sock").family_addrinfo("/testdir/sock2") assert_equal("/testdir/sock2", ai.unix_path) assert_equal(Socket::SOCK_STREAM, ai.socktype) - assert_raise(SocketError) { Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("::1", 80) } + assert_raise(Socket::ResolutionError) { Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("::1", 80) } end def random_port diff --git a/test/socket/test_socket.rb b/test/socket/test_socket.rb index 5645723558..01f790ea35 100644 --- a/test/socket/test_socket.rb +++ b/test/socket/test_socket.rb @@ -91,20 +91,20 @@ class TestSocket < Test::Unit::TestCase def test_getaddrinfo # This should not send a DNS query because AF_UNIX. - assert_raise(SocketError) { Socket.getaddrinfo("www.kame.net", 80, "AF_UNIX") } + assert_raise(Socket::ResolutionError) { Socket.getaddrinfo("www.kame.net", 80, "AF_UNIX") } end def test_getaddrinfo_raises_no_errors_on_port_argument_of_0 # [ruby-core:29427] assert_nothing_raised('[ruby-core:29427]'){ Socket.getaddrinfo('localhost', 0, Socket::AF_INET, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME) } assert_nothing_raised('[ruby-core:29427]'){ Socket.getaddrinfo('localhost', '0', Socket::AF_INET, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME) } assert_nothing_raised('[ruby-core:29427]'){ Socket.getaddrinfo('localhost', '00', Socket::AF_INET, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME) } - assert_raise(SocketError, '[ruby-core:29427]'){ Socket.getaddrinfo(nil, nil, Socket::AF_INET, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME) } + assert_raise(Socket::ResolutionError, '[ruby-core:29427]'){ Socket.getaddrinfo(nil, nil, Socket::AF_INET, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME) } assert_nothing_raised('[ruby-core:29427]'){ TCPServer.open('localhost', 0) {} } end def test_getnameinfo - assert_raise(SocketError) { Socket.getnameinfo(["AF_UNIX", 80, "0.0.0.0"]) } + assert_raise(Socket::ResolutionError) { Socket.getnameinfo(["AF_UNIX", 80, "0.0.0.0"]) } assert_raise(ArgumentError) {Socket.getnameinfo(["AF_INET", "http\0", "example.net"])} assert_raise(ArgumentError) {Socket.getnameinfo(["AF_INET", "http", "example.net\0"])} end @@ -770,4 +770,12 @@ class TestSocket < Test::Unit::TestCase s2.close end + def test_resolurion_error_error_code + begin + Socket.getaddrinfo("www.kame.net", 80, "AF_UNIX") + rescue => e + assert_equal(e.error_code, Socket::EAI_FAMILY) + end + end + end if defined?(Socket) -- cgit v1.2.3