Sha256: 3bb61d2cb1adcd89195c861890032a72ee6516f2194bc147f3f9d463ebffe59d

Contents?: true

Size: 811 Bytes

Versions: 6

Compression:

Stored size: 811 Bytes

Contents

# frozen_string_literal: true

require_relative "../patcher"

require_relative "capybara_driver"
require_relative "driver"
require_relative "navigation"

module Datadog
  module CI
    module Contrib
      module Selenium
        # Patcher enables patching of 'Selenium::WebDriver' module.
        module Patcher
          include Datadog::CI::Contrib::Patcher

          module_function

          def patch
            ::Selenium::WebDriver::Driver.include(Driver)
            ::Selenium::WebDriver::Navigation.include(Navigation)

            # capybara calls `reset!` after each test, so we need to patch it as well
            if defined?(::Capybara::Selenium::Driver)
              ::Capybara::Selenium::Driver.include(CapybaraDriver)
            end
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
datadog-ci-1.14.0 lib/datadog/ci/contrib/selenium/patcher.rb
datadog-ci-1.13.0 lib/datadog/ci/contrib/selenium/patcher.rb
datadog-ci-1.12.0 lib/datadog/ci/contrib/selenium/patcher.rb
datadog-ci-1.11.0 lib/datadog/ci/contrib/selenium/patcher.rb
datadog-ci-1.10.0 lib/datadog/ci/contrib/selenium/patcher.rb
datadog-ci-1.9.0 lib/datadog/ci/contrib/selenium/patcher.rb