Class: Minitest::Queue::BuildStatusRecorder
- Inherits:
-
Reporters::BaseReporter
- Object
- Reporters::BaseReporter
- Minitest::Queue::BuildStatusRecorder
- Defined in:
- lib/minitest/queue/build_status_recorder.rb
Constant Summary collapse
- COUNTERS =
%w( assertions errors failures skips requeues total_time ).freeze
Class Attribute Summary collapse
-
.failure_formatter ⇒ Object
Returns the value of attribute failure_formatter.
Instance Attribute Summary collapse
-
#requeues ⇒ Object
Returns the value of attribute requeues.
Instance Method Summary collapse
-
#initialize(build:, **options) ⇒ BuildStatusRecorder
constructor
A new instance of BuildStatusRecorder.
- #record(test) ⇒ Object
- #report ⇒ Object
Constructor Details
#initialize(build:, **options) ⇒ BuildStatusRecorder
Returns a new instance of BuildStatusRecorder.
23 24 25 26 27 28 29 30 31 |
# File 'lib/minitest/queue/build_status_recorder.rb', line 23 def initialize(build:, **) super() @build = build self.failures = 0 self.errors = 0 self.skips = 0 self.requeues = 0 end |
Class Attribute Details
.failure_formatter ⇒ Object
Returns the value of attribute failure_formatter.
17 18 19 |
# File 'lib/minitest/queue/build_status_recorder.rb', line 17 def failure_formatter @failure_formatter end |
Instance Attribute Details
#requeues ⇒ Object
Returns the value of attribute requeues.
21 22 23 |
# File 'lib/minitest/queue/build_status_recorder.rb', line 21 def requeues @requeues end |
Instance Method Details
#record(test) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/minitest/queue/build_status_recorder.rb', line 37 def record(test) super self.total_time = Minitest.clock_time - start_time # Determine what type of result this is and record it test_id = "#{test.klass}##{test.name}" delta = delta_for(test) acknowledged = if (test.failure || test.error?) && !test.skipped? build.record_error(test_id, dump(test), stat_delta: delta) elsif test.requeued? build.record_requeue(test_id) else build.record_success(test_id, skip_flaky_record: test.skipped?) end if acknowledged if (test.failure || test.error?) && !test.skipped? test.error? ? self.errors += 1 : self.failures += 1 elsif test.requeued? self.requeues += 1 elsif test.skipped? self.skips += 1 end # Apply delta to Redis (record_success returns true when ack'd or when we replaced a failure) build.record_stats_delta(delta) end end |
#report ⇒ Object
33 34 35 |
# File 'lib/minitest/queue/build_status_recorder.rb', line 33 def report # noop end |