capybara_helper.rb 884 B

12345678910111213141516171819202122232425262728293031323334353637
  1. require 'rails_helper'
  2. require 'capybara/rails'
  3. require 'capybara/poltergeist'
  4. require 'capybara-select2'
  5. CAPYBARA_TIMEOUT = ENV['CI'] == 'true' ? 60 : 5
  6. Capybara.register_driver :poltergeist do |app|
  7. Capybara::Poltergeist::Driver.new(app, timeout: CAPYBARA_TIMEOUT)
  8. end
  9. Capybara.javascript_driver = :poltergeist
  10. Capybara.default_max_wait_time = CAPYBARA_TIMEOUT
  11. RSpec.configure do |config|
  12. config.include Warden::Test::Helpers
  13. config.include AlertConfirmer, type: :feature
  14. config.before(:suite) do
  15. Warden.test_mode!
  16. DatabaseCleaner.clean_with(:truncation)
  17. end
  18. config.before(:each) do |example|
  19. DatabaseCleaner.strategy = example.metadata[:js] ? :truncation : :transaction
  20. DatabaseCleaner.start
  21. end
  22. config.after(:each) do
  23. DatabaseCleaner.clean
  24. Warden.test_reset!
  25. end
  26. end
  27. VCR.configure do |config|
  28. config.ignore_localhost = true
  29. end