Module: Datadog::CI::Contrib::Minitest::ParallelExecutorMinitest6::InstanceMethods

Defined in:
lib/datadog/ci/contrib/minitest/parallel_executor_minitest_6.rb

Instance Method Summary collapse

Instance Method Details

#startObject



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/datadog/ci/contrib/minitest/parallel_executor_minitest_6.rb', line 21

def start
  return super unless datadog_configuration[:enabled]

  @pool = Array.new(size) {
    Thread.new @queue do |queue|
      Thread.current.abort_on_exception = true
      while (job = queue.pop)
        klass, method, reporter = job
        reporter.synchronize { reporter.prerecord klass, method }
        result = ::Minitest.run_one_method(klass, method)
        reporter.synchronize { reporter.record result }
      end
    end
  }
end