From c255c2c7c7ab0e57d36541680cba1b2cf3d47095 Mon Sep 17 00:00:00 2001 From: Ken Dreyer Date: Mon, 12 May 2014 18:38:35 -0600 Subject: [PATCH] tests: switch to minitest Ruby 1.9+ uses Minitest as the backend for Test::Unit. As of Minitest 5, the shim has lost some backwards compatibility. It is time to make the jump to minitest. Adjust the kgio test suite to support Minitest 5's syntax. Minitest versions 4 and below do not support the newer Minitest::Test class that arrived in version 5. For that case, use the MiniTest::Unit::TestCase class as a fallback. --- setup.rb | 12 ++++-------- test/lib_read_write.rb | 2 +- test/lib_server_accept.rb | 2 +- test/test_accept_class.rb | 4 ++-- test/test_accept_flags.rb | 4 ++-- test/test_autopush.rb | 4 ++-- test/test_connect_fd_leak.rb | 4 ++-- test/test_cross_thread_close.rb | 4 ++-- test/test_default_wait.rb | 4 ++-- test/test_kgio_addr.rb | 4 ++-- test/test_no_dns_on_tcp_connect.rb | 4 ++-- test/test_peek.rb | 4 ++-- test/test_pipe_popen.rb | 4 ++-- test/test_pipe_read_write.rb | 2 +- test/test_poll.rb | 4 ++-- test/test_singleton_read_write.rb | 4 ++-- test/test_socket.rb | 4 ++-- test/test_socketpair_read_write.rb | 2 +- test/test_syssend.rb | 4 ++-- test/test_tcp6_client_read_server_write.rb | 2 +- test/test_tcp_client_read_server_write.rb | 2 +- test/test_tcp_connect.rb | 4 ++-- test/test_tcp_server.rb | 2 +- test/test_tcp_server_read_client_write.rb | 2 +- test/test_tfo.rb | 4 ++-- test/test_tryopen.rb | 4 ++-- test/test_unix_client_read_server_write.rb | 2 +- test/test_unix_connect.rb | 4 ++-- test/test_unix_server.rb | 2 +- test/test_unix_server_read_client_write.rb | 2 +- 30 files changed, 51 insertions(+), 55 deletions(-) diff --git a/setup.rb b/setup.rb index 5eb5006..946c50b 100644 --- a/setup.rb +++ b/setup.rb @@ -1458,14 +1458,10 @@ class Installer return end $stderr.puts 'Running tests...' if verbose? - begin - require 'test/unit' - rescue LoadError - setup_rb_error 'test/unit cannot loaded. You need Ruby 1.8 or later to invoke this task.' - end - runner = Test::Unit::AutoRunner.new(true) - runner.to_run << TESTDIR - runner.run + $dir = File.dirname(File.expand_path(__FILE__)) + $LOAD_PATH.unshift $dir + $LOAD_PATH.unshift $dir + '/lib/' + Dir.glob "./test/**/test_*.rb", &method(:require) end # diff --git a/test/lib_read_write.rb b/test/lib_read_write.rb index cac87b7..da1dffc 100644 --- a/test/lib_read_write.rb +++ b/test/lib_read_write.rb @@ -1,5 +1,5 @@ # -*- encoding: binary -*- -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' require 'digest/sha1' require 'fileutils' diff --git a/test/lib_server_accept.rb b/test/lib_server_accept.rb index db0d120..12f586f 100644 --- a/test/lib_server_accept.rb +++ b/test/lib_server_accept.rb @@ -1,4 +1,4 @@ -require 'test/unit' +require 'minitest/autorun' require 'fcntl' require 'io/nonblock' require 'fileutils' diff --git a/test/test_accept_class.rb b/test/test_accept_class.rb index 0e1d172..d30ac1f 100644 --- a/test/test_accept_class.rb +++ b/test/test_accept_class.rb @@ -1,9 +1,9 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' -class TestAcceptClass < Test::Unit::TestCase +class TestAcceptClass < Minitest::Test class FooSocket < Kgio::Socket end diff --git a/test/test_accept_flags.rb b/test/test_accept_flags.rb index 0f21adf..f2ea893 100644 --- a/test/test_accept_flags.rb +++ b/test/test_accept_flags.rb @@ -1,10 +1,10 @@ -require 'test/unit' +require 'minitest/autorun' require 'fcntl' require 'io/nonblock' $-w = true require 'kgio' -class TestAcceptFlags < Test::Unit::TestCase +class TestAcceptFlags < Minitest::Test def test_accept_flags @host = ENV["TEST_HOST"] || '127.0.0.1' @srv = Kgio::TCPServer.new(@host, 0) diff --git a/test/test_autopush.rb b/test/test_autopush.rb index 38b7c52..0c88d31 100644 --- a/test/test_autopush.rb +++ b/test/test_autopush.rb @@ -1,5 +1,5 @@ require 'tempfile' -require 'test/unit' +require 'minitest/autorun' begin $-w = false RUBY_PLATFORM =~ /linux/ and require 'strace' @@ -8,7 +8,7 @@ end $-w = true require 'kgio' -class TestAutopush < Test::Unit::TestCase +class TestAutopush < Minitest::Test TCP_CORK = 3 TCP_NOPUSH = 4 diff --git a/test/test_connect_fd_leak.rb b/test/test_connect_fd_leak.rb index 1dfc4cd..934da7b 100644 --- a/test/test_connect_fd_leak.rb +++ b/test/test_connect_fd_leak.rb @@ -1,9 +1,9 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' -class TestConnectFDLeak < Test::Unit::TestCase +class TestConnectFDLeak < Minitest::Test def test_unix_socket nr = 0 diff --git a/test/test_cross_thread_close.rb b/test/test_cross_thread_close.rb index 05c32de..40f0879 100644 --- a/test/test_cross_thread_close.rb +++ b/test/test_cross_thread_close.rb @@ -1,8 +1,8 @@ -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestCrossThreadClose < Test::Unit::TestCase +class TestCrossThreadClose < Minitest::Test def test_cross_thread_close host = ENV["TEST_HOST"] || '127.0.0.1' diff --git a/test/test_default_wait.rb b/test/test_default_wait.rb index 7137d0c..4b84f05 100644 --- a/test/test_default_wait.rb +++ b/test/test_default_wait.rb @@ -1,9 +1,9 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' -class TestDefaultWait < Test::Unit::TestCase +class TestDefaultWait < Minitest::Test def test_socket_pair a, b = Kgio::UNIXSocket.pair diff --git a/test/test_kgio_addr.rb b/test/test_kgio_addr.rb index 8650f5e..1aea516 100644 --- a/test/test_kgio_addr.rb +++ b/test/test_kgio_addr.rb @@ -1,9 +1,9 @@ # -*- encoding: binary -*- -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestKgioAddr < Test::Unit::TestCase +class TestKgioAddr < Minitest::Test def test_tcp addr = ENV["TEST_HOST"] || '127.0.0.1' tcp = TCPServer.new(addr, 0) diff --git a/test/test_no_dns_on_tcp_connect.rb b/test/test_no_dns_on_tcp_connect.rb index d296826..7a67d40 100644 --- a/test/test_no_dns_on_tcp_connect.rb +++ b/test/test_no_dns_on_tcp_connect.rb @@ -1,8 +1,8 @@ -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestNoDnsOnTcpConnect < Test::Unit::TestCase +class TestNoDnsOnTcpConnect < Minitest::Test def test_connect_remote assert_raises(ArgumentError) { Kgio::TCPSocket.new("example.com", 666) } end diff --git a/test/test_peek.rb b/test/test_peek.rb index 9d4475d..2572430 100644 --- a/test/test_peek.rb +++ b/test/test_peek.rb @@ -1,8 +1,8 @@ -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestPeek < Test::Unit::TestCase +class TestPeek < Minitest::Test class EIEIO < Errno::EIO end diff --git a/test/test_pipe_popen.rb b/test/test_pipe_popen.rb index bfd18be..7106884 100644 --- a/test/test_pipe_popen.rb +++ b/test/test_pipe_popen.rb @@ -1,9 +1,9 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' -class TestPipePopen < Test::Unit::TestCase +class TestPipePopen < Minitest::Test def test_popen io = Kgio::Pipe.popen("sleep 1 && echo HI") assert_equal :wait_readable, io.kgio_tryread(2) diff --git a/test/test_pipe_read_write.rb b/test/test_pipe_read_write.rb index a200aeb..5abf16e 100644 --- a/test/test_pipe_read_write.rb +++ b/test/test_pipe_read_write.rb @@ -1,6 +1,6 @@ require './test/lib_read_write.rb' -class TestKgioPipe < Test::Unit::TestCase +class TestKgioPipe < Minitest::Test def setup @rd, @wr = Kgio::Pipe.new end diff --git a/test/test_poll.rb b/test/test_poll.rb index 6463ef9..6f66f96 100644 --- a/test/test_poll.rb +++ b/test/test_poll.rb @@ -1,8 +1,8 @@ -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestPoll < Test::Unit::TestCase +class TestPoll < Minitest::Test def teardown [ @rd, @wr ].each { |io| io.close unless io.closed? } end diff --git a/test/test_singleton_read_write.rb b/test/test_singleton_read_write.rb index 86d30a2..ad22d31 100644 --- a/test/test_singleton_read_write.rb +++ b/test/test_singleton_read_write.rb @@ -1,8 +1,8 @@ -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestSingletonReadWrite < Test::Unit::TestCase +class TestSingletonReadWrite < Minitest::Test def test_unix_socketpair a, b = UNIXSocket.pair diff --git a/test/test_socket.rb b/test/test_socket.rb index a85f0cc..8a0e092 100644 --- a/test/test_socket.rb +++ b/test/test_socket.rb @@ -1,7 +1,7 @@ -require 'test/unit' +require 'minitest/autorun' require 'kgio' -class TestKgioSocket < Test::Unit::TestCase +class TestKgioSocket < Minitest::Test def test_socket_args s = Kgio::Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) assert_kind_of Socket, s diff --git a/test/test_socketpair_read_write.rb b/test/test_socketpair_read_write.rb index 611313a..00b04fa 100644 --- a/test/test_socketpair_read_write.rb +++ b/test/test_socketpair_read_write.rb @@ -1,6 +1,6 @@ require './test/lib_read_write.rb' -class TestKgioUNIXSocketPair < Test::Unit::TestCase +class TestKgioUNIXSocketPair < Minitest::Test def setup @rd, @wr = Kgio::UNIXSocket.pair end diff --git a/test/test_syssend.rb b/test/test_syssend.rb index 7d2511a..23f71b2 100644 --- a/test/test_syssend.rb +++ b/test/test_syssend.rb @@ -1,7 +1,7 @@ -require 'test/unit' +require 'minitest/autorun' require 'kgio' -class TestKgioSyssend < Test::Unit::TestCase +class TestKgioSyssend < Minitest::Test def setup @host = '127.0.0.1' || ENV["TEST_HOST"] end diff --git a/test/test_tcp6_client_read_server_write.rb b/test/test_tcp6_client_read_server_write.rb index 4ad330f..a03d1e1 100644 --- a/test/test_tcp6_client_read_server_write.rb +++ b/test/test_tcp6_client_read_server_write.rb @@ -9,7 +9,7 @@ rescue => e ipv6_enabled = false end -class TestTcp6ClientReadServerWrite < Test::Unit::TestCase +class TestTcp6ClientReadServerWrite < Minitest::Test def setup @host = ENV["TEST_HOST6"] || '::1' @srv = Kgio::TCPServer.new(@host, 0) diff --git a/test/test_tcp_client_read_server_write.rb b/test/test_tcp_client_read_server_write.rb index 13714e9..d63ee74 100644 --- a/test/test_tcp_client_read_server_write.rb +++ b/test/test_tcp_client_read_server_write.rb @@ -1,6 +1,6 @@ require './test/lib_read_write' -class TesTcpClientReadServerWrite < Test::Unit::TestCase +class TesTcpClientReadServerWrite < Minitest::Test def setup @host = ENV["TEST_HOST"] || '127.0.0.1' @srv = Kgio::TCPServer.new(@host, 0) diff --git a/test/test_tcp_connect.rb b/test/test_tcp_connect.rb index 2cf1b86..e344282 100644 --- a/test/test_tcp_connect.rb +++ b/test/test_tcp_connect.rb @@ -1,4 +1,4 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' @@ -10,7 +10,7 @@ class SubSocket < Kgio::Socket end end -class TestKgioTcpConnect < Test::Unit::TestCase +class TestKgioTcpConnect < Minitest::Test def setup @host = ENV["TEST_HOST"] || '127.0.0.1' diff --git a/test/test_tcp_server.rb b/test/test_tcp_server.rb index eb6933e..1ff20fa 100644 --- a/test/test_tcp_server.rb +++ b/test/test_tcp_server.rb @@ -1,6 +1,6 @@ require './test/lib_server_accept' -class TestKgioTCPServer < Test::Unit::TestCase +class TestKgioTCPServer < Minitest::Test def setup @host = ENV["TEST_HOST"] || '127.0.0.1' diff --git a/test/test_tcp_server_read_client_write.rb b/test/test_tcp_server_read_client_write.rb index 68cada3..c0a494c 100644 --- a/test/test_tcp_server_read_client_write.rb +++ b/test/test_tcp_server_read_client_write.rb @@ -1,6 +1,6 @@ require './test/lib_read_write' -class TesTcpServerReadClientWrite < Test::Unit::TestCase +class TesTcpServerReadClientWrite < Minitest::Test def setup @host = ENV["TEST_HOST"] || '127.0.0.1' @srv = Kgio::TCPServer.new(@host, 0) diff --git a/test/test_tfo.rb b/test/test_tfo.rb index 5ab208d..d6f0920 100644 --- a/test/test_tfo.rb +++ b/test/test_tfo.rb @@ -1,7 +1,7 @@ -require 'test/unit' +require 'minitest/autorun' require 'kgio' -class TestTFO < Test::Unit::TestCase +class TestTFO < Minitest::Test def test_constants if `uname -s`.chomp == "Linux" && `uname -r`.to_f >= 3.7 assert_equal 23, Kgio::TCP_FASTOPEN diff --git a/test/test_tryopen.rb b/test/test_tryopen.rb index abcbd37..382ae24 100644 --- a/test/test_tryopen.rb +++ b/test/test_tryopen.rb @@ -1,9 +1,9 @@ require 'tempfile' -require 'test/unit' +require 'minitest/autorun' $-w = true require 'kgio' -class TestTryopen < Test::Unit::TestCase +class TestTryopen < Minitest::Test def test_tryopen_success tmp = Kgio::File.tryopen(__FILE__) diff --git a/test/test_unix_client_read_server_write.rb b/test/test_unix_client_read_server_write.rb index c8835cd..429ffbe 100644 --- a/test/test_unix_client_read_server_write.rb +++ b/test/test_unix_client_read_server_write.rb @@ -2,7 +2,7 @@ require './test/lib_read_write' require 'tempfile' require 'tmpdir' -class TestUnixClientReadServerWrite < Test::Unit::TestCase +class TestUnixClientReadServerWrite < Minitest::Test def setup @tmpdir = Dir.mktmpdir('kgio_unix_0') tmp = Tempfile.new('kgio_unix_0', @tmpdir) diff --git a/test/test_unix_connect.rb b/test/test_unix_connect.rb index 7b19941..b3a6a1d 100644 --- a/test/test_unix_connect.rb +++ b/test/test_unix_connect.rb @@ -1,4 +1,4 @@ -require 'test/unit' +require 'minitest/autorun' require 'io/nonblock' $-w = true require 'kgio' @@ -12,7 +12,7 @@ class SubSocket < Kgio::Socket end end -class TestKgioUnixConnect < Test::Unit::TestCase +class TestKgioUnixConnect < Minitest::Test def setup @tmpdir = Dir.mktmpdir('kgio_unix_1') diff --git a/test/test_unix_server.rb b/test/test_unix_server.rb index 96769b1..8021c3e 100644 --- a/test/test_unix_server.rb +++ b/test/test_unix_server.rb @@ -2,7 +2,7 @@ require 'tempfile' require 'tmpdir' require './test/lib_server_accept' -class TestKgioUNIXServer < Test::Unit::TestCase +class TestKgioUNIXServer < Minitest::Test def setup @tmpdir = Dir.mktmpdir('kgio_unix_2') diff --git a/test/test_unix_server_read_client_write.rb b/test/test_unix_server_read_client_write.rb index 24581e1..f7f3d99 100644 --- a/test/test_unix_server_read_client_write.rb +++ b/test/test_unix_server_read_client_write.rb @@ -2,7 +2,7 @@ require './test/lib_read_write' require 'tempfile' require 'tmpdir' -class TestUnixServerReadClientWrite < Test::Unit::TestCase +class TestUnixServerReadClientWrite < Minitest::Test def setup @tmpdir = Dir.mktmpdir('kgio_unix_3') tmp = Tempfile.new('kgio_unix_3', @tmpdir) -- 1.9.0