Class: Tryouts::CLI::VerboseFailsFormatter

Inherits:
VerboseFormatter show all
Defined in:
lib/tryouts/cli/formatters/verbose.rb

Overview

Verbose formatter that only shows failures and errors

Instance Attribute Summary

Attributes included from FormatterInterface

#current_indent, #stderr, #stdout

Instance Method Summary collapse

Methods inherited from VerboseFormatter

#batch_summary, #debug_info, #error_message, #file_execution_start, #file_parsed, #file_start, #grand_total, #parser_warnings, #phase_header, #setup_output, #teardown_output, #test_start, #trace_info

Methods included from FormatterInterface

#batch_summary, #debug_info, #error_message, #file_end, #file_execution_start, #file_parsed, #file_start, #grand_total, #live_status_manager, #parser_warnings, #phase_header, #puts, #set_live_status_manager, #setup_output, #teardown_output, #test_end, #test_start, #trace_info, #update_live_status, #write

Constructor Details

#initialize(options = {}) ⇒ VerboseFailsFormatter

Returns a new instance of VerboseFailsFormatter.



398
399
400
# File 'lib/tryouts/cli/formatters/verbose.rb', line 398

def initialize(options = {})
  super(options.merge(show_passed: false))
end

Instance Method Details

#file_result(_file_path, total_tests:, failed_count:, error_count:, elapsed_time: nil) ⇒ Object

Show file result summaries in fails-only mode (matching compact behavior)



426
427
428
429
# File 'lib/tryouts/cli/formatters/verbose.rb', line 426

def file_result(_file_path, total_tests:, failed_count:, error_count:, elapsed_time: nil)
  # Always show summary - this matches compact formatter behavior
  super
end

#live_status_capabilitiesObject



431
432
433
434
435
436
437
# File 'lib/tryouts/cli/formatters/verbose.rb', line 431

def live_status_capabilities
  {
    supports_coordination: true,     # Verbose can work with coordinated output
    output_frequency: :high,         # Outputs frequently for each test
    requires_tty: false,             # Works without TTY
  }
end

#setup_start(line_range:) ⇒ Object

Suppress setup/teardown output in fails-only mode



417
418
419
# File 'lib/tryouts/cli/formatters/verbose.rb', line 417

def setup_start(line_range:)
  # No output in fails mode
end

#teardown_start(line_range:) ⇒ Object



421
422
423
# File 'lib/tryouts/cli/formatters/verbose.rb', line 421

def teardown_start(line_range:)
  # No output in fails mode
end

#test_output(test_case:, output_text:, result_packet:) ⇒ Object



402
403
404
405
406
407
# File 'lib/tryouts/cli/formatters/verbose.rb', line 402

def test_output(test_case:, output_text:, result_packet:)
  # Only show output for failed tests
  return if result_packet.passed?

  super
end

#test_result(result_packet) ⇒ Object



409
410
411
412
413
414
# File 'lib/tryouts/cli/formatters/verbose.rb', line 409

def test_result(result_packet)
  # Only show failed/error tests, but with full source code
  return if result_packet.passed?

  super
end