Fix #5143: Allow name changes with same name but changed case.
This commit is contained in:
@@ -3,8 +3,8 @@ require 'test_helper'
|
||||
class UserNameChangeRequestTest < ActiveSupport::TestCase
|
||||
context "in all cases" do
|
||||
setup do
|
||||
@admin = FactoryBot.create(:admin_user)
|
||||
@requester = FactoryBot.create(:user)
|
||||
@admin = create(:admin_user)
|
||||
@requester = create(:user, name: "provence")
|
||||
end
|
||||
|
||||
context "creating a new request" do
|
||||
@@ -15,10 +15,11 @@ class UserNameChangeRequestTest < ActiveSupport::TestCase
|
||||
|
||||
should "not validate if the desired name already exists" do
|
||||
assert_difference("UserNameChangeRequest.count", 0) do
|
||||
req = build(:user_name_change_request, user: @requester, original_name: @requester.name, desired_name: @requester.name)
|
||||
user = create(:user)
|
||||
req = build(:user_name_change_request, user: user, original_name: user.name, desired_name: @requester.name)
|
||||
req.valid?
|
||||
|
||||
assert_equal(["Desired name already exists"], req.errors.full_messages)
|
||||
assert_equal(["Desired name already taken"], req.errors.full_messages)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -27,6 +28,12 @@ class UserNameChangeRequestTest < ActiveSupport::TestCase
|
||||
|
||||
assert_equal("Provence", @requester.name)
|
||||
end
|
||||
|
||||
should "allow the user to change the case of their name" do
|
||||
uncr = create(:user_name_change_request, user: @requester, original_name: "provence", desired_name: "Provence")
|
||||
|
||||
assert_equal("Provence", @requester.name)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -151,6 +151,13 @@ class UserTest < ActiveSupport::TestCase
|
||||
assert_equal(["Name can't contain whitespace"], user.errors.full_messages)
|
||||
end
|
||||
|
||||
should "not conflict with an existing name" do
|
||||
create(:user, name: "bkub")
|
||||
user = build(:user, name: "BKUB")
|
||||
user.save
|
||||
assert_equal(["Name already taken"], user.errors.full_messages)
|
||||
end
|
||||
|
||||
should "be less than 25 characters long" do
|
||||
user = build(:user, name: "a"*25)
|
||||
user.save
|
||||
|
||||
Reference in New Issue
Block a user