Just pass the user object, rather than the display_name, to the user_path helper

This commit is contained in:
Andy Allan 2018-09-10 10:54:29 +08:00
parent 5a2d2f97ce
commit 4dd4831c0a
9 changed files with 29 additions and 29 deletions

View file

@ -29,7 +29,7 @@ class ReportsControllerTest < ActionController::TestCase
}
end
assert_response :redirect
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
end
def test_new_report_with_incomplete_details
@ -55,7 +55,7 @@ class ReportsControllerTest < ActionController::TestCase
}
end
assert_response :redirect
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
issue = Issue.last
@ -103,7 +103,7 @@ class ReportsControllerTest < ActionController::TestCase
}
end
assert_response :redirect
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
issue = Issue.last

View file

@ -1250,7 +1250,7 @@ class UserControllerTest < ActionController::TestCase
assert_difference "ActionMailer::Base.deliveries.size", 1 do
post :make_friend, :params => { :display_name => friend.display_name }, :session => { :user => user }
end
assert_redirected_to user_path(:display_name => friend.display_name)
assert_redirected_to user_path(friend)
assert_match /is now your friend/, flash[:notice]
assert Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
email = ActionMailer::Base.deliveries.first
@ -1262,7 +1262,7 @@ class UserControllerTest < ActionController::TestCase
assert_no_difference "ActionMailer::Base.deliveries.size" do
post :make_friend, :params => { :display_name => friend.display_name }, :session => { :user => user }
end
assert_redirected_to user_path(:display_name => friend.display_name)
assert_redirected_to user_path(friend)
assert_match /You are already friends with/, flash[:warning]
assert Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
end
@ -1335,13 +1335,13 @@ class UserControllerTest < ActionController::TestCase
# When logged in a POST should remove the friendship
post :remove_friend, :params => { :display_name => friend.display_name }, :session => { :user => user }
assert_redirected_to user_path(:display_name => friend.display_name)
assert_redirected_to user_path(friend)
assert_match /was removed from your friends/, flash[:notice]
assert_nil Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
# A second POST should report that the friendship does not exist
post :remove_friend, :params => { :display_name => friend.display_name }, :session => { :user => user }
assert_redirected_to user_path(:display_name => friend.display_name)
assert_redirected_to user_path(friend)
assert_match /is not one of your friends/, flash[:error]
assert_nil Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
end

View file

@ -31,7 +31,7 @@ class UserRolesControllerTest < ActionController::TestCase
# Granting should still fail
post :grant, :params => { :display_name => target_user.display_name, :role => "moderator" }
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "Only administrators can perform user role management, and you are not an administrator.", flash[:error]
# Login as an administrator
@ -50,20 +50,20 @@ class UserRolesControllerTest < ActionController::TestCase
assert_no_difference "UserRole.count" do
post :grant, :params => { :display_name => super_user.display_name, :role => role }
end
assert_redirected_to user_path(super_user.display_name)
assert_redirected_to user_path(super_user)
assert_equal "The user already has role #{role}.", flash[:error]
# Granting a role to a user that doesn't have it should work...
assert_difference "UserRole.count", 1 do
post :grant, :params => { :display_name => target_user.display_name, :role => role }
end
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
# ...but trying a second time should fail
assert_no_difference "UserRole.count" do
post :grant, :params => { :display_name => target_user.display_name, :role => role }
end
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "The user already has role #{role}.", flash[:error]
end
@ -71,7 +71,7 @@ class UserRolesControllerTest < ActionController::TestCase
assert_difference "UserRole.count", 0 do
post :grant, :params => { :display_name => target_user.display_name, :role => "no_such_role" }
end
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "The string `no_such_role' is not a valid role.", flash[:error]
end
@ -92,7 +92,7 @@ class UserRolesControllerTest < ActionController::TestCase
# Revoking should still fail
post :revoke, :params => { :display_name => target_user.display_name, :role => "moderator" }
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "Only administrators can perform user role management, and you are not an administrator.", flash[:error]
# Login as an administrator
@ -111,20 +111,20 @@ class UserRolesControllerTest < ActionController::TestCase
assert_no_difference "UserRole.count" do
post :revoke, :params => { :display_name => target_user.display_name, :role => role }
end
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "The user does not have role #{role}.", flash[:error]
# Removing a role from a user that has it should work...
assert_difference "UserRole.count", -1 do
post :revoke, :params => { :display_name => super_user.display_name, :role => role }
end
assert_redirected_to user_path(super_user.display_name)
assert_redirected_to user_path(super_user)
# ...but trying a second time should fail
assert_no_difference "UserRole.count" do
post :revoke, :params => { :display_name => super_user.display_name, :role => role }
end
assert_redirected_to user_path(super_user.display_name)
assert_redirected_to user_path(super_user)
assert_equal "The user does not have role #{role}.", flash[:error]
end
@ -132,12 +132,12 @@ class UserRolesControllerTest < ActionController::TestCase
assert_difference "UserRole.count", 0 do
post :revoke, :params => { :display_name => target_user.display_name, :role => "no_such_role" }
end
assert_redirected_to user_path(target_user.display_name)
assert_redirected_to user_path(target_user)
assert_equal "The string `no_such_role' is not a valid role.", flash[:error]
# Revoking administrator role from current user should fail
post :revoke, :params => { :display_name => administrator_user.display_name, :role => "administrator" }
assert_redirected_to user_path(administrator_user.display_name)
assert_redirected_to user_path(administrator_user)
assert_equal "Cannot revoke administrator role from current user.", flash[:error]
end
end