]> git.openstreetmap.org Git - rails.git/blobdiff - test/application_system_test_case.rb
Keep the behaviour backwards-compatible
[rails.git] / test / application_system_test_case.rb
index df67ac914ceb722a74faeea36c61a2dcca8d19d4..96406b5a3c5fc58000e326ba0b16cdca17a09ecc 100644 (file)
@@ -1,21 +1,27 @@
 require "test_helper"
 require "capybara/poltergeist"
 
-WebMock.disable_net_connect!(:allow_localhost => true)
-
 # 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"] = "offscreen"
+ENV["QT_QPA_PLATFORM"] = "phantom" if IO.popen(["phantomjs", "--version"], :err => :close).read.empty?
 
-class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
+ActiveSupport.on_load(:action_dispatch_system_test_case) do
   ActionDispatch::SystemTesting::Server.silence_puma = true
+end
 
-  driven_by :poltergeist, :screen_size => [1400, 1400]
+class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
+  driven_by :poltergeist, :screen_size => [1400, 1400], :options => { :timeout => 120 }
 
   def initialize(*args)
-    stub_request(:get, "http://api.hostip.info/country.php?ip=127.0.0.1")
+    stub_request(:get, "https://api.hostip.info/country.php?ip=127.0.0.1")
       .to_return(:status => 404)
     super(*args)
   end
+
+  # Phantomjs can pick up browser Accept-Language preferences from your desktop environment.
+  # We don't want this to happen during the tests!
+  setup do
+    page.driver.add_headers("Accept-Language" => "en")
+  end
 end