class Minitest::Reporters::StatsdReporter

Constants

FAILING_INFRASTRUCTURE_THRESHOLD

Attributes

statsd[R]

Public Class Methods

new(statsd: Minitest::Queue::Statsd, statsd_endpoint: nil, **options) click to toggle source
Calls superclass method
# File lib/minitest/reporters/statsd_reporter.rb, line 13
def initialize(statsd: Minitest::Queue::Statsd, statsd_endpoint: nil, **options)
  super(options)
  @statsd = statsd.new(
    addr: statsd_endpoint,
    namespace: 'minitests.tests',
    default_tags: ["slug:#{ENV['BUILDKITE_PROJECT_SLUG']}"]
  )
  @failures = 0
end

Public Instance Methods

record(result) click to toggle source
# File lib/minitest/reporters/statsd_reporter.rb, line 23
def record(result)
  if result.passed?
    @statsd.increment("passed")
  elsif result.skipped? && !result.requeued?
    @statsd.increment("skipped")
  else
    @statsd.increment('requeued') if result.requeued?

    if result.failure.is_a?(Minitest::UnexpectedError)
      @statsd.increment("unexpected_errors")
    else
      @statsd.increment("failed")
    end

    @failures += 1
  end
end
report() click to toggle source
# File lib/minitest/reporters/statsd_reporter.rb, line 41
def report
  @statsd.increment("failing_infrastructure_threshold") if @failures >= FAILING_INFRASTRUCTURE_THRESHOLD
end