initial commit + release
[kgio.git] / test / test_tcp_server.rb
blobc2bb518fdf755bd8f7066a5d03b7db7519e6f56d
1 require 'test/unit'
2 require 'io/nonblock'
3 $-w = true
4 require 'kgio'
6 class TestKgioTCPServer < Test::Unit::TestCase
8   def setup
9     @host = ENV["TEST_HOST"] || '127.0.0.1'
10     @srv = Kgio::TCPServer.new(@host, 0)
11     @port = @srv.addr[1]
12   end
14   def teardown
15     @srv.close unless @srv.closed?
16     Kgio.accept_cloexec = true
17     Kgio.accept_nonblock = false
18   end
20   def test_accept
21     a = TCPSocket.new(@host, @port)
22     b = @srv.kgio_accept
23     assert_kind_of Kgio::Socket, b
24     assert_equal @host, b.kgio_addr
25   end
27   def test_accept_nonblock
28     @srv.nonblock = true
29     assert_equal nil, @srv.kgio_accept
30   end
31 end