class RSpec::LongTimeSpecsProfiler
Constants
- VERSION
Public Instance Methods
dump_profile()
click to toggle source
Override RSpec::Core::Formatters::BaseTextFormatter#dump_profile
# File lib/rspec/long_time_specs_profiler.rb, line 9 def dump_profile dump_profile_long_time_spec_files end
Private Instance Methods
dump_profile_long_time_spec_files()
click to toggle source
# File lib/rspec/long_time_specs_profiler.rb, line 15 def dump_profile_long_time_spec_files number_of_examples = RSpec.configuration.profile_examples examples_group_by_location = examples.group_by do |example| example.example_group.parent_groups.last.metadata[:example_group][:location] end return if examples_group_by_location.length <= 1 stats = examples_group_by_location.map { |location, examples| Stat.new(location, examples) } sorted_stats = stats.sort_by(&:total_time).reverse output.puts "\nTop #{number_of_examples} longest time spec files:" sorted_stats.first(number_of_examples).each do |stat| total = "#{failure_color(format_seconds(stat.total_time))} #{failure_color("seconds")}" count = pluralize(stat.count, "example") output.puts " #{stat.description}" output.puts detail_color(" #{total} ( #{count} ) #{stat.location}") end end