2

When I run test with chrome driver - it passes.

When I run it with poltergeist - it tries to make click with format HTML and I have error:

 ActionController::UnknownFormat:
   ActionController::UnknownFormat

controller.rb def features newspaper = Newspaper.find(params[:id]) respond_to do |format| format.js { render locals: { newspaper: newspaper } } end end

view.html.haml = link_to features_newspaper_path(newspaper), class: %w(qa-edit-features), format: 'js', remote: true feature_spec.rb it 'enable newspaper hilsninger features', js: true do find('.qa-edit-features').click end spec_helper.rb

require 'capybara/rspec' require 'capybara/poltergeist' Capybara.register_driver :chrome do |app| Capybara::Selenium::Driver.new(app, browser: :chrome) end if ENV['BROWSER'] == 'google-chrome' Capybara.javascript_driver = :chrome else Capybara.javascript_driver = :poltergeist end

Denys Medynskyi
  • 2,353
  • 8
  • 39
  • 70

1 Answers1

0

This is most likely caused by a JS error on your page (or use of ES2015+ methods not supported by Poltergeist) causing the JS parsing to fail and the rails UJS handlers to never be installed. Make sure your Poltergeist driver registration config (https://github.com/teampoltergeist/poltergeist#customization) has js_errors: true in it and it should show you the JS error.

Thomas Walpole
  • 48,548
  • 5
  • 64
  • 78