X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/908324323e8801ff76a7cde812e61dbbb03a33ce..606b5c1b6a3b9314f6abd004e8bd9ed3b4352da5:/test/integration/user_terms_seen_test.rb diff --git a/test/integration/user_terms_seen_test.rb b/test/integration/user_terms_seen_test.rb index 416d226cc..5e08fedd9 100644 --- a/test/integration/user_terms_seen_test.rb +++ b/test/integration/user_terms_seen_test.rb @@ -1,21 +1,17 @@ require "test_helper" class UserTermsSeenTest < ActionDispatch::IntegrationTest - def setup - stub_hostip_requests - end - def test_api_blocked user = create(:user, :terms_seen => false, :terms_agreed => nil) - get "/api/#{API_VERSION}/user/preferences", :headers => auth_header(user.display_name, "test") + get "/api/#{Settings.api_version}/user/preferences", :headers => bearer_authorization_header(user) assert_response :forbidden # touch it so that the user has seen the terms user.terms_seen = true user.save - get "/api/#{API_VERSION}/user/preferences", :headers => auth_header(user.display_name, "test") + get "/api/#{Settings.api_version}/user/preferences", :headers => bearer_authorization_header(user) assert_response :success end @@ -26,16 +22,15 @@ class UserTermsSeenTest < ActionDispatch::IntegrationTest get "/login" follow_redirect! assert_response :success - assert_template "users/login" + assert_template "sessions/new" post "/login", :params => { :username => user.email, :password => "test", :referer => "/diary/new" } - assert_response :redirect # but now we need to look at the terms - assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new" + assert_redirected_to account_terms_path(:referer => "/diary/new") follow_redirect! assert_response :success # don't agree to the terms, but hit decline - post "/user/save", :params => { :decline => true, :referer => "/diary/new" } + put "/account/terms", :params => { :decline => true, :referer => "/diary/new" } assert_redirected_to "/diary/new" follow_redirect! @@ -51,23 +46,16 @@ class UserTermsSeenTest < ActionDispatch::IntegrationTest get "/login" follow_redirect! assert_response :success - assert_template "users/login" + assert_template "sessions/new" post "/login", :params => { :username => user.email, :password => "test", :referer => "/diary/new" } - assert_response :redirect # but now we need to look at the terms - assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new" + assert_redirected_to account_terms_path(:referer => "/diary/new") # check that if we go somewhere else now, it redirects # back to the terms page. get "/traces/mine" - assert_redirected_to :controller => :users, :action => :terms, :referer => "/traces/mine" + assert_redirected_to account_terms_path(:referer => "/traces/mine") get "/traces/mine", :params => { :referer => "/diary/new" } - assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new" - end - - private - - def auth_header(user, pass) - { "HTTP_AUTHORIZATION" => format("Basic %{auth}", :auth => Base64.encode64("#{user}:#{pass}")) } + assert_redirected_to account_terms_path(:referer => "/diary/new") end end