Sha256: 28ccc3faefde496c8338def1cdb996e337693d7df100e8c832f2a9d2ca7a5f35

Contents?: true

Size: 1.04 KB

Versions: 5

Compression:

Stored size: 1.04 KB

Contents

require 'ddtrace/contrib/integration'
require 'ddtrace/contrib/cucumber/configuration/settings'
require 'ddtrace/contrib/cucumber/patcher'
require 'ddtrace/contrib/integration'

module Datadog
  module Contrib
    module Cucumber
      # Description of Cucumber integration
      class Integration
        include Contrib::Integration

        MINIMUM_VERSION = Gem::Version.new('3.0.0')

        register_as :cucumber, auto_patch: true

        def self.version
          Gem.loaded_specs['cucumber'] \
            && Gem.loaded_specs['cucumber'].version
        end

        def self.loaded?
          !defined?(::Cucumber).nil? && !defined?(::Cucumber::Runtime).nil?
        end

        def self.compatible?
          super && version >= MINIMUM_VERSION
        end

        # test environments should not auto instrument test libraries
        def auto_instrument?
          false
        end

        def default_configuration
          Configuration::Settings.new
        end

        def patcher
          Patcher
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ddtrace-0.49.0 lib/ddtrace/contrib/cucumber/integration.rb
ddtrace-0.48.0 lib/ddtrace/contrib/cucumber/integration.rb
ddtrace-0.47.0 lib/ddtrace/contrib/cucumber/integration.rb
ddtrace-0.46.0 lib/ddtrace/contrib/cucumber/integration.rb
ddtrace-0.45.0 lib/ddtrace/contrib/cucumber/integration.rb