From db8c8c0916c5e0feaad5767ac7cd3fe30b86e964 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Thu, 13 Feb 2020 23:10:03 +0900 Subject: [PATCH] spec/ruby/library/socket/addrinfo: skip the specs that uses SOCK_SEQPACKET on Android SOCK_SEQPACKET seems not to be supported on Android --- .../socket/addrinfo/initialize_spec.rb | 56 ++++++++++--------- 1 file changed, 30 insertions(+), 26 deletions(-) diff --git a/spec/ruby/library/socket/addrinfo/initialize_spec.rb b/spec/ruby/library/socket/addrinfo/initialize_spec.rb index 8354553f61..00250439fd 100644 --- a/spec/ruby/library/socket/addrinfo/initialize_spec.rb +++ b/spec/ruby/library/socket/addrinfo/initialize_spec.rb @@ -274,15 +274,17 @@ describe "Addrinfo#initialize" do end end - with_feature :sock_packet do - [:SOCK_SEQPACKET].each do |type| - it "overwrites the socket type #{type}" do - sockaddr = ['AF_INET', 80, 'hostname', '127.0.0.1'] + platform_is_not :android do + with_feature :sock_packet do + [:SOCK_SEQPACKET].each do |type| + it "overwrites the socket type #{type}" do + sockaddr = ['AF_INET', 80, 'hostname', '127.0.0.1'] - value = Socket.const_get(type) - addr = Addrinfo.new(sockaddr, nil, value) + value = Socket.const_get(type) + addr = Addrinfo.new(sockaddr, nil, value) - addr.socktype.should == value + addr.socktype.should == value + end end end end @@ -448,28 +450,30 @@ describe "Addrinfo#initialize" do end platform_is :linux do - describe 'and the socket type is set to SOCK_SEQPACKET' do - before do - @socktype = Socket::SOCK_SEQPACKET - end - - valid = [:IPPROTO_IP, :IPPROTO_HOPOPTS] - - valid.each do |type| - it "overwrites the protocol when using #{type}" do - value = Socket.const_get(type) - addr = Addrinfo.new(@sockaddr, nil, @socktype, value) - - addr.protocol.should == value + platform_is_not :android do + describe 'and the socket type is set to SOCK_SEQPACKET' do + before do + @socktype = Socket::SOCK_SEQPACKET end - end - (Socket.constants.grep(/^IPPROTO/) - valid).each do |type| - it "raises SocketError when using #{type}" do - value = Socket.const_get(type) - block = -> { Addrinfo.new(@sockaddr, nil, @socktype, value) } + valid = [:IPPROTO_IP, :IPPROTO_HOPOPTS] - block.should raise_error(SocketError) + valid.each do |type| + it "overwrites the protocol when using #{type}" do + value = Socket.const_get(type) + addr = Addrinfo.new(@sockaddr, nil, @socktype, value) + + addr.protocol.should == value + end + end + + (Socket.constants.grep(/^IPPROTO/) - valid).each do |type| + it "raises SocketError when using #{type}" do + value = Socket.const_get(type) + block = -> { Addrinfo.new(@sockaddr, nil, @socktype, value) } + + block.should raise_error(SocketError) + end end end end