未验证 提交 8ac4d150 编写于 作者: E Eileen M. Uchitelle 提交者: GitHub

Merge pull request #36018 from aricwalker/parallel-setup-exception

Catch exceptions raised in `parallelize_setup` and ensure tests fail when they occur
......@@ -71,7 +71,9 @@ def start
fork do
DRb.stop_service
after_fork(worker)
begin
after_fork(worker)
rescue => setup_exception; end
queue = DRbObject.new_with_uri(@url)
......@@ -83,6 +85,8 @@ def start
Minitest.run_one_method(klass, method)
end
add_setup_exception(result, setup_exception) if setup_exception
begin
queue.record(reporter, result)
rescue DRb::DRbConnError
......@@ -106,6 +110,11 @@ def shutdown
@queue_size.times { @queue << nil }
@pool.each { |pid| Process.waitpid pid }
end
private
def add_setup_exception(result, setup_exception)
result.failures.prepend Minitest::UnexpectedError.new(setup_exception)
end
end
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册