Skip to content

Commit 6c7e392

Browse files
committed
Update javascript driver to headless chrome
1 parent a58f9bb commit 6c7e392

File tree

2 files changed

+20
-12
lines changed

2 files changed

+20
-12
lines changed

react-rails.gemspec

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,9 @@ Gem::Specification.new do |s|
2323
s.add_development_dependency 'guard-minitest'
2424
s.add_development_dependency 'jbuilder'
2525
s.add_development_dependency 'listen', '~> 3.0.0' # support Ruby 2.1
26-
s.add_development_dependency 'poltergeist', '>= 0.3.3'
26+
s.add_development_dependency 'chromedriver-helper'
27+
s.add_development_dependency 'capybara'
28+
s.add_development_dependency 'selenium-webdriver'
2729
s.add_development_dependency 'test-unit', '~> 2.5'
2830
s.add_development_dependency 'rails', '>= 3.2'
2931

test/test_helper.rb

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,30 @@
2929
require 'pathname'
3030
require 'minitest/mock'
3131
require 'capybara/rails'
32-
require 'capybara/poltergeist'
32+
require 'selenium/webdriver'
3333
Dummy::Application.load_tasks
3434

3535
WebpackerHelpers.clear_webpacker_packs
3636

3737
Capybara.app = Rails.application
3838

39-
Capybara.register_driver :poltergeist_debug do |app|
40-
poltergeist_options = {
41-
# `page.driver.debug` will cause Poltergeist to open a browser window
42-
inspector: true,
43-
# hide warnings from React.js whitespace changes:
44-
# and from React.createClass deprecation
45-
js_errors: false
46-
}
47-
Capybara::Poltergeist::Driver.new(app, poltergeist_options)
39+
40+
Capybara.register_driver :chrome do |app|
41+
Capybara::Selenium::Driver.new(app, browser: :chrome)
4842
end
49-
Capybara.javascript_driver = :poltergeist_debug
43+
44+
Capybara.register_driver :headless_chrome do |app|
45+
capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
46+
chromeOptions: { args: %w(headless disable-gpu) }
47+
)
48+
49+
Capybara::Selenium::Driver.new(app,
50+
browser: :chrome,
51+
desired_capabilities: capabilities
52+
)
53+
end
54+
55+
Capybara.javascript_driver = :headless_chrome
5056
Capybara.current_driver = Capybara.javascript_driver
5157

5258
CACHE_PATH = Pathname.new File.expand_path("../#{DUMMY_LOCATION}/tmp/cache", __FILE__)

0 commit comments

Comments
 (0)