about summary refs log tree commit homepage
path: root/test/test_tcp6_client_read_server_write.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_tcp6_client_read_server_write.rb')
-rw-r--r--test/test_tcp6_client_read_server_write.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/test_tcp6_client_read_server_write.rb b/test/test_tcp6_client_read_server_write.rb
new file mode 100644
index 0000000..9438fcc
--- /dev/null
+++ b/test/test_tcp6_client_read_server_write.rb
@@ -0,0 +1,23 @@
+require './test/lib_read_write'
+
+begin
+  tmp = TCPServer.new(ENV["TEST_HOST6"] || '::1')
+  ipv6_enabled = true
+rescue => e
+  warn "skipping IPv6 tests, host does not seem to be IPv6 enabled:"
+  warn "  #{e}"
+  ipv6_enabled = false
+end
+
+class TestTcp6ClientReadServerWrite < Test::Unit::TestCase
+  def setup
+    @host = ENV["TEST_HOST6"] || '::1'
+    @srv = Kgio::TCPServer.new(@host, 0)
+    @port = @srv.addr[1]
+    @wr = Kgio::TCPSocket.new(@host, @port)
+    @rd = @srv.kgio_accept
+    assert_equal Socket.unpack_sockaddr_in(@rd.getpeername)[-1], @rd.kgio_addr
+  end
+
+  include LibReadWriteTest
+end if ipv6_enabled