class Tryouts::CLI::QuietFormatter

def grand_total(total_tests:, failed_count:, error_count:, successful_files:, total_files:, elapsed_time:)

def grand_total(total_tests:, failed_count:, error_count:, successful_files:, total_files:, elapsed_time:)
  return unless @show_final_summary
  puts
  puts # Add newline after dots
  time_str = if elapsed_time < 2
               "#{(elapsed_time * 1000).to_i}ms"
             else
               "#{elapsed_time.round(2)}s"
             end
  issues_count = failed_count + error_count
  if issues_count > 0
    passed  = [total_tests - issues_count, 0].max  # Ensure passed never goes negative
    details = []
    details << "#{failed_count} failed" if failed_count > 0
    details << "#{error_count} errors" if error_count > 0
    puts Console.color(:red, "Total: #{details.join(', ')}, #{passed} passed (#{time_str})")
  else
    puts Console.color(:green, "Total: #{total_tests} passed (#{time_str})")
  end
  if total_files > 1
    puts "Files: #{successful_files} of #{total_files} successful"
  end
end