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"] = "offscreen"
+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
- driven_by :poltergeist, :screen_size => [1400, 1400]
+ def after_teardown
+ Settings.reload!
+ super
+ end
+
+ private
+
+ def sign_in_as(user)
+ visit login_path
+ within "form", :text => "Email Address or Username" do
+ fill_in "username", :with => user.email
+ fill_in "password", :with => "test"
+ click_on "Login"
+ end
+ end
+
+ def sign_out
+ visit logout_path
+ click_on "Logout", :match => :first
+ end
- 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