Sha256: e1ec2da0414617cb7dd90b7269c6797961b902f4719d1d25664aa22c0d8a1551

Contents?: true

Size: 1.13 KB

Versions: 8

Compression:

Stored size: 1.13 KB

Contents

# frozen_string_literal: true

require_relative "../../ext/test"
require_relative "ext"

module Datadog
  module CI
    module Contrib
      module Minitest
        module Reporter
          def self.included(base)
            base.prepend(InstanceMethods)
          end

          module InstanceMethods
            def report(*)
              return super unless datadog_configuration[:enabled]

              res = super

              active_test_session = CI.active_test_session
              active_test_module = CI.active_test_module

              return res if active_test_session.nil? || active_test_module.nil?

              if passed?
                active_test_module.passed!
                active_test_session.passed!
              else
                active_test_module.failed!
                active_test_session.failed!
              end

              active_test_module.finish
              active_test_session.finish

              res
            end

            private

            def datadog_configuration
              Datadog.configuration.ci[:minitest]
            end
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
datadog-ci-1.0.0.beta3 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-1.0.0.beta2 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-1.0.0.beta1 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-0.8.3 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-0.8.2 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-0.8.1 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-0.8.0 lib/datadog/ci/contrib/minitest/reporter.rb
datadog-ci-0.7.0 lib/datadog/ci/contrib/minitest/reporter.rb