X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/1e3b3c1f10213c48a40083e8bbca1429d9f819d6..6ca22de4f2c68e4b14a6e2f0938a8657c33adc31:/test/integration/user_blocks_test.rb diff --git a/test/integration/user_blocks_test.rb b/test/integration/user_blocks_test.rb index f0b9070d6..938136592 100644 --- a/test/integration/user_blocks_test.rb +++ b/test/integration/user_blocks_test.rb @@ -1,56 +1,60 @@ -require File.dirname(__FILE__) + '/../test_helper' - -class UserBlocksTest < ActionController::IntegrationTest - fixtures :users, :user_blocks, :user_roles +require "test_helper" +class UserBlocksTest < ActionDispatch::IntegrationTest def auth_header(user, pass) - {"HTTP_AUTHORIZATION" => "Basic %s" % Base64.encode64("#{user}:#{pass}")} + { "HTTP_AUTHORIZATION" => format("Basic %{auth}", :auth => Base64.encode64("#{user}:#{pass}")) } end def test_api_blocked - blocked_user = users(:public_user) + blocked_user = create(:user) get "/api/#{API_VERSION}/user/details" assert_response :unauthorized - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + get "/api/#{API_VERSION}/user/details", :headers => auth_header(blocked_user.display_name, "test") assert_response :success # now block the user - UserBlock.create(:user_id => blocked_user.id, - :creator_id => users(:moderator_user).id, - :reason => "testing", - :ends_at => Time.now.getutc + 5.minutes) - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + UserBlock.create( + :user_id => blocked_user.id, + :creator_id => create(:moderator_user).id, + :reason => "testing", + :ends_at => Time.now.getutc + 5.minutes + ) + get "/api/#{API_VERSION}/user/details", :headers => auth_header(blocked_user.display_name, "test") assert_response :forbidden end def test_api_revoke - blocked_user = users(:public_user) - moderator = users(:moderator_user) - - block = UserBlock.create(:user_id => blocked_user.id, - :creator_id => moderator.id, - :reason => "testing", - :ends_at => Time.now.getutc + 5.minutes) - get "/api/#{API_VERSION}/user/details", nil, auth_header(blocked_user.display_name, "test") + 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 + ) + get "/api/#{API_VERSION}/user/details", :headers => auth_header(blocked_user.display_name, "test") assert_response :forbidden # revoke the ban - post '/login', {'user[email]' => moderator.email, 'user[password]' => "test", :referer => "/blocks/#{block.id}/revoke"} + get "/login" + assert_response :success + post "/login", :params => { "username" => moderator.email, "password" => "test", :referer => "/blocks/#{block.id}/revoke" } assert_response :redirect follow_redirect! assert_response :success - assert_template 'user_blocks/revoke' - post "/blocks/#{block.id}/revoke", {'confirm' => "yes"} + assert_template "user_blocks/revoke" + post "/blocks/#{block.id}/revoke", :params => { "confirm" => "yes" } assert_response :redirect follow_redirect! assert_response :success - assert_template 'user_blocks/show' + assert_template "user_blocks/show" 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/#{API_VERSION}/user/details", :headers => auth_header(blocked_user.display_name, "test") assert_response :success end end