Sha256: d7ca812b44a59241cdfc08141f957e170bc7a8cfead8f59dfd3d0f9e7a898976

Contents?: true

Size: 863 Bytes

Versions: 2

Compression:

Stored size: 863 Bytes

Contents

# typed: strict
# frozen_string_literal: true

module Minitest
  module Distributed
    module Reporters
      class TestOrderReporter < Minitest::Reporter
        extend T::Sig

        sig { params(io: IO, options: T::Hash[Symbol, T.untyped]).void }
        def initialize(io, options)
          super
          @path = T.let(options.fetch(:test_order_file), String)
          @file = T.let(nil, T.nilable(File))
        end

        sig { void }
        def start
          @file = File.open(@path, "w+")
          super
        end

        sig { override.params(klass: T::Class[T.anything], name: String).void }
        def prerecord(klass, name)
          T.must(@file).puts("#{klass}##{name}")
          T.must(@file).flush
        end

        sig { override.void }
        def report
          T.must(@file).close
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
minitest-distributed-0.2.11 lib/minitest/distributed/reporters/test_order_reporter.rb
minitest-distributed-0.2.10 lib/minitest/distributed/reporters/test_order_reporter.rb