diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | test/socket/test_addrinfo.rb | 9 |
2 files changed, 14 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Sat Mar 5 09:50:58 2016 Rei Odaira <Rei.Odaira@gmail.com> + + * test/socket/test_addrinfo.rb (test_ipv6_address_predicates): + IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED are broken + on AIX, so skip related tests. + Sat Mar 5 09:17:54 2016 Rei Odaira <Rei.Odaira@gmail.com> * test/rinda/test_rinda.rb (test_make_socket_ipv4_multicast): diff --git a/test/socket/test_addrinfo.rb b/test/socket/test_addrinfo.rb index a607a84172..02cd714d91 100644 --- a/test/socket/test_addrinfo.rb +++ b/test/socket/test_addrinfo.rb @@ -544,7 +544,14 @@ class TestSocketAddrinfo < Test::Unit::TestCase # MacOS X returns IPv4 address for ::ffff:1.2.3.4 and ::1.2.3.4. # Solaris returns IPv4 address for ::ffff:1.2.3.4. ai = ipv6(addr) - assert(ai.ipv4? || ai.send(meth), "ai=#{addr_exp}; ai.ipv4? || .#{meth}") + begin + assert(ai.ipv4? || ai.send(meth), "ai=#{addr_exp}; ai.ipv4? || .#{meth}") + rescue Minitest::Assertion + if /aix/ =~ RUBY_PLATFORM + skip "Known bug in IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED on AIX" + end + raise $! + end else assert(ipv6(addr).send(meth), "#{addr_exp}.#{meth}") assert_equal(addr, ipv6(addr).ip_address) |