]> git.openstreetmap.org Git - rails.git/blobdiff - test/application_system_test_case.rb
Limit system test asserts/interactions to sidebar
[rails.git] / test / application_system_test_case.rb
index 176f4903d4be6f4f6d75f55352fcc4ed3c10d5b8..b170e74b1aa75e1273aa02c20e418beac20e31fd 100644 (file)
@@ -1,21 +1,30 @@
 require "test_helper"
-require "capybara/poltergeist"
 
-WebMock.disable_net_connect!(:allow_localhost => true)
+ENV.delete("http_proxy")
 
-# Work around weird debian/ubuntu phantomjs
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=817277
-# https://github.com/ariya/phantomjs/issues/14376
-ENV["QT_QPA_PLATFORM"] = "phantom" if IO.popen(["phantomjs", "--version"], :err => :close).read.empty?
+ActiveSupport.on_load(:action_dispatch_system_test_case) do
+  ActionDispatch::SystemTesting::Server.silence_puma = true
+end
 
 class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
-  ActionDispatch::SystemTesting::Server.silence_puma = true
+  driven_by :selenium, :using => :headless_firefox do |options|
+    options.add_preference("intl.accept_languages", "en")
+  end
+
+  def before_setup
+    super
+    osm_website_app = create(:oauth_application, :name => "OpenStreetMap Web Site", :scopes => "write_api write_notes")
+    Settings.oauth_application = osm_website_app.uid
+  end
+
+  def after_teardown
+    Settings.reload!
+    super
+  end
 
-  driven_by :poltergeist, :screen_size => [1400, 1400]
+  private
 
-  def initialize(*args)
-    stub_request(:get, "http://api.hostip.info/country.php?ip=127.0.0.1")
-      .to_return(:status => 404)
-    super(*args)
+  def within_sidebar(&block)
+    within "#sidebar_content", &block
   end
 end