diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-05 13:40:42 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-05 13:40:42 +0000 |
commit | 9539cba2febc8afa8178db497816e1f61dc07872 (patch) | |
tree | 403218892c89a299877197b37c4a20f429eb4bbf /test | |
parent | dacfe17370003407f435e4fa9a94f2e0e6071fe3 (diff) | |
download | ruby-9539cba2febc8afa8178db497816e1f61dc07872.tar.gz ruby-9539cba2febc8afa8178db497816e1f61dc07872.tar.xz ruby-9539cba2febc8afa8178db497816e1f61dc07872.zip |
don't get a name for anonymous Unix socket.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@21346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r-- | test/socket/test_unix.rb | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/test/socket/test_unix.rb b/test/socket/test_unix.rb index 853fb28ef..93c31212b 100644 --- a/test/socket/test_unix.rb +++ b/test/socket/test_unix.rb @@ -5,6 +5,7 @@ end require "test/unit" require "tempfile" +require "tmpdir" class TestUNIXSocket < Test::Unit::TestCase def test_fd_passing @@ -167,17 +168,20 @@ class TestUNIXSocket < Test::Unit::TestCase end def test_initialize - Socket.open(Socket::AF_UNIX, Socket::SOCK_STREAM, 0) {|s| - addr = s.getsockname - assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } - assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } - } - Socket.open("AF_UNIX", "SOCK_STREAM", 0) {|s| - addr = s.getsockname - assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } - assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + Dir.mktmpdir {|d| + Socket.open(Socket::AF_UNIX, Socket::SOCK_STREAM, 0) {|s| + s.bind(Socket.pack_sockaddr_un("#{d}/s1")) + addr = s.getsockname + assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } + assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + } + Socket.open("AF_UNIX", "SOCK_STREAM", 0) {|s| + s.bind(Socket.pack_sockaddr_un("#{d}/s2")) + addr = s.getsockname + assert_nothing_raised { Socket.unpack_sockaddr_un(addr) } + assert_raise(ArgumentError) { Socket.unpack_sockaddr_in(addr) } + } } end - end if defined?(UNIXSocket) && /cygwin/ !~ RUBY_PLATFORM |