summaryrefslogtreecommitdiff
path: root/test/socket/test_socket.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/socket/test_socket.rb')
-rw-r--r--test/socket/test_socket.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/socket/test_socket.rb b/test/socket/test_socket.rb
new file mode 100644
index 0000000000..1d2ba04bfd
--- /dev/null
+++ b/test/socket/test_socket.rb
@@ -0,0 +1,19 @@
+begin
+ require "socket"
+ require "test/unit"
+rescue LoadError
+end
+
+class TestBasicSocket < Test::Unit::TestCase
+ def test_setsockopt # [ruby-dev:25039]
+ s = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0)
+ val = Object.new
+ class << val; self end.send(:define_method, :to_str) {
+ s.close
+ "eth0"
+ }
+ assert_raise(IOError) {
+ s.setsockopt(Socket::SOL_SOCKET, Socket::SO_BINDTODEVICE, val)
+ }
+ end
+end if defined?(Socket)