Skip to content

Commit

Permalink
Merge pull request #2203 from tvdeyen/switch-to-cuprite
Browse files Browse the repository at this point in the history
Switch to cuprite for system testing
  • Loading branch information
tvdeyen authored Oct 27, 2021
2 parents 88e3222 + 1d1ebcd commit 13301ed
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 14 deletions.
5 changes: 5 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,8 @@ group :development, :test do
gem "brakeman", require: false
end
end

# Necessary for system tests in Rails 6.0
if ENV["RAILS_VERSION"] == "6.0"
gem "selenium-webdriver"
end
2 changes: 1 addition & 1 deletion alchemy_cms.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -57,13 +57,13 @@ Gem::Specification.new do |gem|

gem.add_development_dependency "capybara", ["~> 3.0"]
gem.add_development_dependency "capybara-screenshot", ["~> 1.0"]
gem.add_development_dependency "cuprite", ["~> 0.13"]
gem.add_development_dependency "factory_bot_rails", ["~> 6.0"]
gem.add_development_dependency "puma", ["~> 5.0"]
gem.add_development_dependency "rails-controller-testing", ["~> 1.0"]
gem.add_development_dependency "rspec-activemodel-mocks", ["~> 1.0"]
gem.add_development_dependency "rspec-rails", [">= 4.0.0.beta2"]
gem.add_development_dependency "simplecov", ["~> 0.20"]
gem.add_development_dependency "webdrivers", ["~> 5.0"]
gem.add_development_dependency "webmock", ["~> 3.3"]
gem.add_development_dependency "shoulda-matchers", ["~> 5.0"]
gem.add_development_dependency "timecop", ["~> 0.9"]
Expand Down
19 changes: 7 additions & 12 deletions spec/rails_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
require "rails-controller-testing"
require "rspec-activemodel-mocks"
require "rspec/rails"
require "webdrivers/chromedriver"
require "shoulda-matchers"
require "factory_bot"

Expand Down Expand Up @@ -47,20 +46,16 @@
# Configure capybara for integration testing
Capybara.default_selector = :css
Capybara.ignore_hidden_elements = false
Capybara.server = :puma

FactoryBot.definition_file_paths.append(Alchemy::TestSupport.factories_path)
FactoryBot.find_definitions

Capybara.register_driver :selenium_chrome_headless do |app|
Capybara::Selenium::Driver.load_selenium
browser_options = ::Selenium::WebDriver::Chrome::Options.new.tap do |opts|
opts.args << "--headless"
opts.args << "--disable-gpu" if Gem.win_platform?
# Workaround https://bugs.chromium.org/p/chromedriver/issues/detail?id=2650&q=load&sort=-id&colspec=ID%20Status%20Pri%20Owner%20Summary
opts.args << "--disable-site-isolation-trials"
opts.args << "--window-size=1280,800"
end
Capybara::Selenium::Driver.new(app, browser: :chrome, options: browser_options)
require "capybara/cuprite"
Capybara.register_driver(:cuprite) do |app|
Capybara::Cuprite::Driver.new(app, {
window_size: [1280, 800],
})
end

Shoulda::Matchers.configure do |config|
Expand Down Expand Up @@ -107,6 +102,6 @@
end

config.before(:each, type: :system, js: true) do
driven_by :selenium_chrome_headless
driven_by :cuprite
end
end
1 change: 0 additions & 1 deletion spec/views/admin/attachments/show_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
it "displays urls to file" do
assign(:attachment, attachment)
render
puts rendered
aggregate_failures do
expect(rendered).to have_selector("label:contains('URL') + p:contains('/attachment/#{attachment.id}/show')")
expect(rendered).to have_selector("label:contains('Download-URL') + p:contains('/attachment/#{attachment.id}/download')")
Expand Down

0 comments on commit 13301ed

Please sign in to comment.