X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f6695c9079f4eeeecaa796c879868f797f97cd55..60c1ae79d6c56f3e6d892043dc0f9681ae8cfa92:/test/integration/user_blocks_test.rb diff --git a/test/integration/user_blocks_test.rb b/test/integration/user_blocks_test.rb index 9425c690f..5147733e3 100644 --- a/test/integration/user_blocks_test.rb +++ b/test/integration/user_blocks_test.rb @@ -1,54 +1,51 @@ require "test_helper" class UserBlocksTest < ActionDispatch::IntegrationTest - fixtures :users, :user_roles - - def auth_header(user, pass) - { "HTTP_AUTHORIZATION" => format("Basic %s", Base64.encode64("#{user}:#{pass}")) } - end - def test_api_blocked - blocked_user = users(:public_user) + blocked_user = create(:user) - get "/api/#{API_VERSION}/user/details" + get "/api/#{Settings.api_version}/user/details" assert_response :unauthorized - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + get "/api/#{Settings.api_version}/user/details", :headers => bearer_authorization_header(blocked_user) assert_response :success # now block the user UserBlock.create( :user_id => blocked_user.id, - :creator_id => users(:moderator_user).id, + :creator_id => create(:moderator_user).id, :reason => "testing", - :ends_at => Time.now.getutc + 5.minutes + :ends_at => Time.now.utc + 5.minutes, + :deactivates_at => Time.now.utc + 5.minutes ) - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + get "/api/#{Settings.api_version}/user/details", :headers => bearer_authorization_header(blocked_user) assert_response :forbidden end def test_api_revoke - blocked_user = users(:public_user) - moderator = users(:moderator_user) + blocked_user = create(:user) + moderator = create(:moderator_user) block = UserBlock.create( :user_id => blocked_user.id, :creator_id => moderator.id, :reason => "testing", - :ends_at => Time.now.getutc + 5.minutes + :ends_at => Time.now.utc + 5.minutes, + :deactivates_at => Time.now.utc + 5.minutes ) - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + get "/api/#{Settings.api_version}/user/details", :headers => bearer_authorization_header(blocked_user) assert_response :forbidden # revoke the ban get "/login" assert_response :success - post "/login", "username" => moderator.email, "password" => "test", :referer => "/blocks/#{block.id}/revoke" + post "/login", :params => { "username" => moderator.email, "password" => "test", :referer => "/user_blocks/#{block.id}/edit" } assert_response :redirect follow_redirect! assert_response :success - assert_template "user_blocks/revoke" - post "/blocks/#{block.id}/revoke", "confirm" => "yes" + assert_template "user_blocks/edit" + put "/user_blocks/#{block.id}", :params => { :user_block_period => "0", + :user_block => { :needs_view => false, :reason => "Unblocked" } } assert_response :redirect follow_redirect! assert_response :success @@ -56,7 +53,7 @@ class UserBlocksTest < ActionDispatch::IntegrationTest reset! # access the API again. this time it should work - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + get "/api/#{Settings.api_version}/user/details", :headers => bearer_authorization_header(blocked_user) assert_response :success end end