Sha256: fab79045c37d128fff5849a16a8536568c98fe4a7eb2c108ab541c8ee55d1d1d
Contents?: true
Size: 1.73 KB
Versions: 2
Compression:
Stored size: 1.73 KB
Contents
require 'test/unit' require 'io/nonblock' $-w = true require 'kgio' class TestAcceptClass < Test::Unit::TestCase class FooSocket < Kgio::Socket end def setup assert_equal Kgio::Socket, Kgio.accept_class end def teardown Kgio.accept_class = nil assert_equal Kgio::Socket, Kgio.accept_class end def test_tcp_socket Kgio.accept_class = Kgio::TCPSocket assert_equal Kgio::TCPSocket, Kgio.accept_class end def test_invalid assert_raises(TypeError) { Kgio.accept_class = TCPSocket } assert_equal Kgio::Socket, Kgio.accept_class end def test_accepted_class @host = ENV["TEST_HOST"] || '127.0.0.1' @srv = Kgio::TCPServer.new(@host, 0) @port = @srv.addr[1] socks = [] Kgio.accept_class = Kgio::TCPSocket socks << TCPSocket.new(@host, @port) assert_instance_of Kgio::TCPSocket, @srv.kgio_accept socks << TCPSocket.new(@host, @port) IO.select([@srv]) assert_instance_of Kgio::TCPSocket, @srv.kgio_tryaccept Kgio.accept_class = nil socks << TCPSocket.new(@host, @port) assert_instance_of Kgio::Socket, @srv.kgio_accept socks << TCPSocket.new(@host, @port) IO.select([@srv]) assert_instance_of Kgio::Socket, @srv.kgio_tryaccept Kgio.accept_class = Kgio::UNIXSocket socks << TCPSocket.new(@host, @port) assert_instance_of Kgio::UNIXSocket, @srv.kgio_accept socks << TCPSocket.new(@host, @port) IO.select([@srv]) assert_instance_of Kgio::UNIXSocket, @srv.kgio_tryaccept socks << TCPSocket.new(@host, @port) assert_instance_of FooSocket, @srv.kgio_accept(FooSocket) socks << TCPSocket.new(@host, @port) IO.select([@srv]) assert_instance_of FooSocket, @srv.kgio_tryaccept(FooSocket) socks.each(&:close) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kgio-2.11.4 | test/test_accept_class.rb |
kgio-2.11.3 | test/test_accept_class.rb |