mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Sat Mar 5 09:17:54 2016 Rei Odaira <Rei.Odaira@gmail.com>
* test/rinda/test_rinda.rb (test_make_socket_ipv4_multicast): The fifth argument to getsockopt(2) should be modified to indicate the actual size of the value on return, but not in AIX. This is a know bug. Skip related tests. * test/rinda/test_rinda.rb (test_ring_server_ipv4_multicast): ditto. * test/rinda/test_rinda.rb (test_make_socket_unicast): ditto. * test/socket/test_basicsocket.rb (test_getsockopt): ditto. * test/socket/test_sockopt.rb (test_bool): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
adde0a94a2
commit
1874524d42
4 changed files with 70 additions and 24 deletions
|
|
@ -16,20 +16,28 @@ class TestSocket_BasicSocket < Test::Unit::TestCase
|
|||
|
||||
def test_getsockopt
|
||||
inet_stream do |s|
|
||||
n = s.getsockopt(Socket::SOL_SOCKET, Socket::SO_TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
begin
|
||||
n = s.getsockopt(Socket::SOL_SOCKET, Socket::SO_TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
|
||||
n = s.getsockopt("SOL_SOCKET", "SO_TYPE")
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
n = s.getsockopt("SOL_SOCKET", "SO_TYPE")
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
|
||||
n = s.getsockopt(:SOL_SOCKET, :SO_TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
n = s.getsockopt(:SOL_SOCKET, :SO_TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
|
||||
n = s.getsockopt(:SOCKET, :TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
n = s.getsockopt(:SOCKET, :TYPE)
|
||||
assert_equal([Socket::SOCK_STREAM].pack("i"), n.data)
|
||||
|
||||
n = s.getsockopt(Socket::SOL_SOCKET, Socket::SO_ERROR)
|
||||
assert_equal([0].pack("i"), n.data)
|
||||
n = s.getsockopt(Socket::SOL_SOCKET, Socket::SO_ERROR)
|
||||
assert_equal([0].pack("i"), n.data)
|
||||
rescue Minitest::Assertion
|
||||
s.close
|
||||
if /aix/ =~ RUBY_PLATFORM
|
||||
skip "Known bug in getsockopt(2) on AIX"
|
||||
end
|
||||
raise $!
|
||||
end
|
||||
|
||||
val = Object.new
|
||||
class << val; self end.send(:define_method, :to_int) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue