Class: OpenapiFirst::Test::Coverage::TerminalReporter

Inherits:
Object
  • Object
show all
Defined in:
lib/openapi_first/test/coverage/terminal_reporter.rb

Overview

Reports coverage to a logger using ANSI-coloured lines.

Instance Method Summary collapse

Constructor Details

#initialize(verbose: false, focused: true, logger: Test.logger) ⇒ TerminalReporter

Returns a new instance of TerminalReporter.



8
9
10
11
12
# File 'lib/openapi_first/test/coverage/terminal_reporter.rb', line 8

def initialize(verbose: false, focused: true, logger: Test.logger)
  @verbose = verbose
  @focused = focused && !verbose
  @logger = logger
end

Instance Method Details

#format(coverage_result) ⇒ Object



14
15
16
17
# File 'lib/openapi_first/test/coverage/terminal_reporter.rb', line 14

def format(coverage_result)
  logger.warn 'DEPRECATION WARNING: TerminalReporter#format is deprecated, use #report instead.'
  report(coverage_result)
end

#report(coverage_result) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/openapi_first/test/coverage/terminal_reporter.rb', line 19

def report(coverage_result)
  coverage = coverage_result.coverage
  if coverage.zero?
    logger.warn 'API Coverage did not detect any API requests for the registered API descriptions. ' \
                'Make sure to observe your application using OpenapiFirst::Test.'
  end
  coverage_result.plans.each { |plan| format_plan(plan) } if coverage.positive?
end