Mini Shell

Direktori : /opt/alt/ruby23/lib64/ruby/gems/2.3.0/gems/rake-10.4.2/rakelib/
Upload File :
Current File : //opt/alt/ruby23/lib64/ruby/gems/2.3.0/gems/rake-10.4.2/rakelib/test_times.rake

module TestTimes
  def self.run(test_results, limit=0)
    limit = limit.nonzero? || 10
    tests = []
    test_results.split(/\n/).each do |line|
      if line =~ /^(.+?#[^:]+): ([0-9.]+) s: \.$/
        tests << [$1, $2.to_f, line]
      end
    end

    puts "#{limit} Slowest tests"
    puts tests.sort_by { |item|
      item[1]
    }.reverse[0...limit].map { |item|
      "%6.3f: %-s\n" % [item[1], item[0]]
    }
  end
end

namespace :test do
  desc "Find the slowest unit tests"
  task :times, [:limit] do |t, args|
    TestTimes.run `rake test:units TESTOPTS='--verbose'`, args.limit.to_i
  end
end

Zerion Mini Shell 1.0