summaryrefslogtreecommitdiff
path: root/test/socket
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-09 23:39:57 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-09 23:39:57 +0000
commitbb59e412e1a37124d8ba14c4ab19caea75f54233 (patch)
tree86dd3b9367cb55aa4576f78467550bd1fbc9b028 /test/socket
parentd9a56b4feedb4d85b5b867e537a3e94acacd42e1 (diff)
* ext/socket/socket.c (sock_listen): get OpenFile just before calling
listen(2). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/socket')
-rw-r--r--test/socket/test_socket.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/socket/test_socket.rb b/test/socket/test_socket.rb
index c436484dde..11d688ba75 100644
--- a/test/socket/test_socket.rb
+++ b/test/socket/test_socket.rb
@@ -57,4 +57,18 @@ class TestBasicSocket < Test::Unit::TestCase
}
end
end
+
+ def test_listen
+ s = nil
+ log = Object.new
+ class << log; self end.send(:define_method, :to_int) {
+ s.close
+ 2
+ }
+ inet_stream do |s|
+ assert_raise(IOError) {
+ s.listen(log)
+ }
+ end
+ end
end if defined?(Socket)