Sha256: f15972a8ac3ecee4532e5cbcc3e95307b75cd797d96adc7c33f88d48be1b4e8b

Contents?: true

Size: 1.53 KB

Versions: 5

Compression:

Stored size: 1.53 KB

Contents

# frozen_string_literal: true

require 'rspec/expectations'
require 'capybara/spec/spec_helper'
require 'webdrivers' if ENV['CI']

module Capybara
  module SpecHelper
    def marionette?(session)
      browser_name(session) == :firefox &&
        session.driver.browser.capabilities.is_a?(::Selenium::WebDriver::Remote::W3C::Capabilities)
    end

    def marionette_lt?(version, session)
      marionette?(session) && (session.driver.browser.capabilities[:browser_version].to_f < version)
    end

    def marionette_gte?(version, session)
      marionette?(session) && (session.driver.browser.capabilities[:browser_version].to_f >= version)
    end

    def chrome?(session)
      browser_name(session) == :chrome
    end

    def chrome_lt?(version, session)
      chrome?(session) && (session.driver.browser.capabilities[:version].to_f < version)
    end

    def chrome_gte?(version, session)
      chrome?(session) && (session.driver.browser.capabilities[:version].to_f >= version)
    end

    def edge?(session)
      browser_name(session) == :edge
    end

    def ie?(session)
      %i[internet_explorer ie].include?(browser_name(session))
    end

    def browser_name(session)
      session.driver.browser.browser if session.respond_to?(:driver)
    end

    def remote?(session)
      session.driver.browser.is_a? ::Selenium::WebDriver::Remote::Driver
    end
  end
end

RSpec.configure do |config|
  Capybara::SpecHelper.configure(config)
  config.filter_run_including focus_: true unless ENV['CI']
  config.run_all_when_everything_filtered = true
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
capybara-3.11.1 spec/spec_helper.rb
capybara-3.11.0 spec/spec_helper.rb
capybara-3.10.1 spec/spec_helper.rb
capybara-3.10.0 spec/spec_helper.rb
capybara-3.9.0 spec/spec_helper.rb