diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-06-04 02:40:40 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-06-04 02:40:40 +0000 |
commit | c2a9f64a7098fe6d2dcf82decaf62d6d829d4831 (patch) | |
tree | 938648aaa2ad9628f0b1b490b49db7cc321633e6 | |
parent | b423a08482a5dd0c83055bcecbdf81f85ab27f74 (diff) | |
download | ruby-c2a9f64a7098fe6d2dcf82decaf62d6d829d4831.tar.gz ruby-c2a9f64a7098fe6d2dcf82decaf62d6d829d4831.tar.xz ruby-c2a9f64a7098fe6d2dcf82decaf62d6d829d4831.zip |
add a test for file descriptor passing.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@8565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | test/socket/test_unix.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/socket/test_unix.rb b/test/socket/test_unix.rb new file mode 100644 index 000000000..1314fca1f --- /dev/null +++ b/test/socket/test_unix.rb @@ -0,0 +1,28 @@ +begin + require "socket" + require "test/unit" +rescue LoadError +end + +class TestUNIXSocket < Test::Unit::TestCase + def test_fd_passing + r1, w = IO.pipe + s1, s2 = UNIXSocket.pair + begin + s1.send_io r1 + rescue NotImplementedError + s1.close + assert_raise(NotImplementedError) { s2.recv_io } + return + end + r2 = s2.recv_io + assert_equal(r1.stat.ino, r2.stat.ino) + assert_not_equal(r1.fileno, r2.fileno) + ensure + s1.close if s1 + s2.close if s2 + r1.close if r1 + r2.close if r2 + w.close if w + end +end if defined?(UNIXSocket) |