Sha256: 8910a4f64b3a36bff70e24a8fae854964d08c987786e2b4a8c37b28528233147

Contents?: true

Size: 961 Bytes

Versions: 8

Compression:

Stored size: 961 Bytes

Contents

require_relative "helpers"

module Datadog
  module CI
    module Contrib
      module Minitest
        module Runnable
          def self.included(base)
            base.singleton_class.prepend(ClassMethods)
          end

          module ClassMethods
            def run(*)
              return super unless datadog_configuration[:enabled]
              return super if Helpers.parallel?(self)

              method = runnable_methods.first
              return super if method.nil?

              test_suite_name = Helpers.test_suite_name(self, method)

              test_suite = Datadog::CI.start_test_suite(test_suite_name)

              results = super
              return results unless test_suite

              test_suite.finish

              results
            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/runnable.rb
datadog-ci-1.0.0.beta2 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-1.0.0.beta1 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-0.8.3 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-0.8.2 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-0.8.1 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-0.8.0 lib/datadog/ci/contrib/minitest/runnable.rb
datadog-ci-0.7.0 lib/datadog/ci/contrib/minitest/runnable.rb