summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/lib/test/unit.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/test/lib/test/unit.rb b/test/lib/test/unit.rb
index 7ba525d0bf..ed32e48f86 100644
--- a/test/lib/test/unit.rb
+++ b/test/lib/test/unit.rb
@@ -290,13 +290,17 @@ module Test
end
- def after_worker_down(worker, e=nil, c=false)
- return unless @options[:parallel]
- return if @interrupt
+ def flush_job_tokens
if @jobserver
@jobserver[1] << @job_tokens
@job_tokens.clear
end
+ end
+
+ def after_worker_down(worker, e=nil, c=false)
+ return unless @options[:parallel]
+ return if @interrupt
+ flush_job_tokens
warn e if e
real_file = worker.real_file and warn "running file: #{real_file}"
@need_quit = true
@@ -488,6 +492,7 @@ module Test
end
quit_workers
+ flush_job_tokens
unless @interrupt || !@options[:retry] || @need_quit
parallel = @options[:parallel]