Module: Ace::TestRunner::Suite::DisplayHelpers

Included in:
DisplayManager, SimpleDisplayManager
Defined in:
lib/ace/test_runner/suite/display_helpers.rb

Overview

DisplayHelpers provides shared formatting methods for display managers. This module centralizes common output formatting logic used by both SimpleDisplayManager (line-by-line) and DisplayManager (animated).

Interface Requirements

Including classes must implement:

color(text, color_name) - Apply color to text (or return text unchanged)
@param text [String] the text to colorize
@param color_name [Symbol] one of :green, :red, :yellow
@return [String] colorized text or plain text

This module provides a colorize wrapper that delegates to color(). Internal methods use colorize() for consistency; including classes only need to implement color().

Instance Method Summary collapse

Instance Method Details

#render_summary(summary, start_time, separator) ⇒ Object

Render the overall summary section

Parameters:

  • summary (Hash) —

    summary data from orchestrator

  • start_time (Time) —

    when the test run started

  • separator (String) —

    visual separator line



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/ace/test_runner/suite/display_helpers.rb', line 27

def render_summary(summary, start_time, separator)
  puts
  puts separator

  total_duration = Time.now - start_time
  total_skipped = summary[:total_skipped] || 0

  # Show packages with skipped tests first (least important, scrolls away)
  render_skipped_packages(summary, total_skipped)

  # Show failed packages (important but less than status)
  render_failed_packages(summary)

  # Duration
  puts "Duration:    #{sprintf("%.2f", total_duration)}s"

  # Stats (packages, tests, assertions)
  puts "Packages:    #{summary[:packages_passed]} passed, #{summary[:packages_failed]} failed"
  render_tests_line(summary, total_skipped)
  render_assertions_line(summary)

  # Overall status message LAST (most visible)
  puts
  render_status_message(summary[:packages_failed], total_skipped)

  puts separator
end