Sha256: e8a50fdf3718721638287b467f9d85419be2935edf657fd0a6808a444b268ba2

Contents?: true

Size: 1.01 KB

Versions: 5

Compression:

Stored size: 1.01 KB

Contents

# frozen_string_literal: true

require 'webdrivers'
require 'selenium/webdriver'

Capybara.register_driver :chrome do |app|
  Capybara::Selenium::Driver.new(app, browser: :chrome)
end

Capybara.register_driver :headless_chrome do |app|
  options = ::Selenium::WebDriver::Chrome::Options.new
  options.headless!
  options.add_argument '--window-size=1680,1050'

  if ENV['CI'].present?
    # NOTE: alternative, create a chrome user
    #       https://github.com/GoogleChromeLabs/lighthousebot/blob/master/builder/Dockerfile#L35-L40
    options.add_argument '--no-sandbox'

    options.add_argument '--disable-gpu'
    options.add_argument '--disable-dev-shm-usage'
  end

  Capybara::Selenium::Driver.new(
    app,
    browser: :chrome,
    options: options
  )
end

# NOTE: here for backwards compatibility, we should use system tests
# instead now (`driven_by :headless_chrome`)
Capybara.javascript_driver = :headless_chrome

RSpec.configure do |config|
  config.before(:each, type: :system) do
    driven_by :headless_chrome
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
welaika-suspenders-3.0 templates/chromedriver.rb
welaika-suspenders-2.36 templates/chromedriver.rb
welaika-suspenders-2.35 templates/chromedriver.rb
welaika-suspenders-2.34 templates/chromedriver.rb
welaika-suspenders-2.33 templates/chromedriver.rb