X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f3b6e0faa1cbf92b46555bea2fca62ca1895e703..2b8798d769f273ae11b5da902c0879cbc15c0072:/test/application_system_test_case.rb?ds=sidebyside diff --git a/test/application_system_test_case.rb b/test/application_system_test_case.rb index 9abc7aa70..ef8f0e371 100644 --- a/test/application_system_test_case.rb +++ b/test/application_system_test_case.rb @@ -1,16 +1,44 @@ require "test_helper" -require "capybara/poltergeist" -WebMock.disable_net_connect!(:allow_localhost => true) +ENV.delete("http_proxy") -class ApplicationSystemTestCase < ActionDispatch::SystemTestCase +ActiveSupport.on_load(:action_dispatch_system_test_case) do ActionDispatch::SystemTesting::Server.silence_puma = true +end + +class ApplicationSystemTestCase < ActionDispatch::SystemTestCase + 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