]> git.openstreetmap.org Git - rails.git/blobdiff - test/integration/user_blocks_test.rb
Refactor some relation_controller tests to use factories.
[rails.git] / test / integration / user_blocks_test.rb
index 942a94302de8ec4195f2afdb46a0545aa3573af6..38bb3338a6c15a455de3ce1229ba6a59d47d577d 100644 (file)
@@ -1,14 +1,12 @@
-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 %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"
     assert_response :unauthorized
@@ -17,41 +15,42 @@ class UserBlocksTest < ActionController::IntegrationTest
     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)
+    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", nil, 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)
+    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", nil, auth_header(blocked_user.display_name, "test")
     assert_response :forbidden
 
     # revoke the ban
-    get '/login'
-    assert_response :redirect
-    assert_redirected_to "controller" => "user", "action" => "login", "cookie_test" => "true"
-    follow_redirect!
+    get "/login"
     assert_response :success
-    post '/login', {'username' => moderator.email, 'password' => "test", :referer => "/blocks/#{block.id}/revoke"}
+    post "/login", "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", "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