Class: Reeve::Testing::Report
- Inherits:
-
Object
- Object
- Reeve::Testing::Report
- Defined in:
- lib/reeve/testing/report.rb
Overview
The aggregate of one compliance run (FR-018).
to_s is written to be the whole output of a failing CI step: a one-line verdict
followed by every failure in full. A report that has to be cross-referenced with
something else is a report nobody reads at 3am.
Instance Attribute Summary collapse
-
#results ⇒ Object
readonly
Returns the value of attribute results.
Instance Method Summary collapse
- #failed? ⇒ Boolean
- #failures ⇒ Object
-
#initialize(results) ⇒ Report
constructor
A new instance of Report.
- #inspect ⇒ Object
- #passed? ⇒ Boolean
- #passes ⇒ Object
- #size ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(results) ⇒ Report
Returns a new instance of Report.
13 14 15 16 |
# File 'lib/reeve/testing/report.rb', line 13 def initialize(results) @results = results.freeze freeze end |
Instance Attribute Details
#results ⇒ Object (readonly)
Returns the value of attribute results.
11 12 13 |
# File 'lib/reeve/testing/report.rb', line 11 def results @results end |
Instance Method Details
#failed? ⇒ Boolean
22 23 24 |
# File 'lib/reeve/testing/report.rb', line 22 def failed? !passed? end |
#failures ⇒ Object
26 27 28 |
# File 'lib/reeve/testing/report.rb', line 26 def failures results.reject(&:passed?) end |
#inspect ⇒ Object
42 43 44 |
# File 'lib/reeve/testing/report.rb', line 42 def inspect "#<Reeve::Testing::Report #{summary}>" end |
#passed? ⇒ Boolean
18 19 20 |
# File 'lib/reeve/testing/report.rb', line 18 def passed? failures.empty? end |
#passes ⇒ Object
30 31 32 |
# File 'lib/reeve/testing/report.rb', line 30 def passes results.select(&:passed?) end |
#size ⇒ Object
34 35 36 |
# File 'lib/reeve/testing/report.rb', line 34 def size results.size end |
#to_s ⇒ Object
38 39 40 |
# File 'lib/reeve/testing/report.rb', line 38 def to_s [summary, *failures.map { |result| detail(result) }].join("\n") end |