diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2023-10-17 20:13:04 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2023-10-18 02:55:42 +0900 |
commit | 776d4dec69c81e2c94c36648205f513baa05551f (patch) | |
tree | 213580c98ba2ef814f5b874b155a3b4667e59d73 /tool/test | |
parent | 8b520bd3fb239cbfba150644bf7c5676bb07a579 (diff) | |
download | ruby-776d4dec69c81e2c94c36648205f513baa05551f.tar.gz |
Manage parallel test workers after timeout
Diffstat (limited to 'tool/test')
4 files changed, 24 insertions, 0 deletions
diff --git a/tool/test/testunit/test_parallel.rb b/tool/test/testunit/test_parallel.rb index 1b64afdffe..454c26a6ac 100644 --- a/tool/test/testunit/test_parallel.rb +++ b/tool/test/testunit/test_parallel.rb @@ -211,5 +211,12 @@ module TestParallel assert_match(/^Retrying hung up testcases\.+$/, buf) assert_match(/^2 tests,.* 0 failures,/, buf) end + + def test_retry_workers + spawn_runner "--worker-timeout=1", "test4test_slow_0.rb", "test4test_slow_1.rb", jobs: "2" + buf = Timeout.timeout(TIMEOUT) {@test_out.read} + assert_match(/^Retrying hung up testcases\.+$/, buf) + assert_match(/^2 tests,.* 0 failures,/, buf) + end end end diff --git a/tool/test/testunit/tests_for_parallel/slow_helper.rb b/tool/test/testunit/tests_for_parallel/slow_helper.rb new file mode 100644 index 0000000000..d8372730a8 --- /dev/null +++ b/tool/test/testunit/tests_for_parallel/slow_helper.rb @@ -0,0 +1,7 @@ +require 'test/unit' + +module TestSlowTimeout + def test_slow + sleep (ENV['sec'] || 3).to_i if on_parallel_worker? + end +end diff --git a/tool/test/testunit/tests_for_parallel/test4test_slow_0.rb b/tool/test/testunit/tests_for_parallel/test4test_slow_0.rb new file mode 100644 index 0000000000..a749b0e1d3 --- /dev/null +++ b/tool/test/testunit/tests_for_parallel/test4test_slow_0.rb @@ -0,0 +1,5 @@ +require_relative 'slow_helper' + +class TestSlowV0 < Test::Unit::TestCase + include TestSlowTimeout +end diff --git a/tool/test/testunit/tests_for_parallel/test4test_slow_1.rb b/tool/test/testunit/tests_for_parallel/test4test_slow_1.rb new file mode 100644 index 0000000000..924a3b11fa --- /dev/null +++ b/tool/test/testunit/tests_for_parallel/test4test_slow_1.rb @@ -0,0 +1,5 @@ +require_relative 'slow_helper' + +class TestSlowV1 < Test::Unit::TestCase + include TestSlowTimeout +end |