From 97c1607e4187b2661dd7d6088fd4b03166c56028 Mon Sep 17 00:00:00 2001 From: jvyden Date: Fri, 25 Jul 2025 15:57:52 -0400 Subject: [PATCH 1/2] Explicitly mark users with changed usernames as updated --- Refresh.Database/GameDatabaseContext.Users.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Refresh.Database/GameDatabaseContext.Users.cs b/Refresh.Database/GameDatabaseContext.Users.cs index 096c210cf..56f2dbdc0 100644 --- a/Refresh.Database/GameDatabaseContext.Users.cs +++ b/Refresh.Database/GameDatabaseContext.Users.cs @@ -281,6 +281,7 @@ public void RenameUser(GameUser user, string newUsername) string oldUsername = user.Username; user.Username = newUsername; + this.GameUsers.Update(user); this.SaveChanges(); this.AddNotification("Username Updated", $"An admin has updated your account's username from '{oldUsername}' to '{newUsername}'. " + From f1c1ed711d4c7bdcf3adf181a5eadfc6e7175d7a Mon Sep 17 00:00:00 2001 From: jvyden Date: Fri, 25 Jul 2025 16:02:32 -0400 Subject: [PATCH 2/2] Add test case for renaming a user --- .../Tests/Users/UserActionTests.cs | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 RefreshTests.GameServer/Tests/Users/UserActionTests.cs diff --git a/RefreshTests.GameServer/Tests/Users/UserActionTests.cs b/RefreshTests.GameServer/Tests/Users/UserActionTests.cs new file mode 100644 index 000000000..f7a69a686 --- /dev/null +++ b/RefreshTests.GameServer/Tests/Users/UserActionTests.cs @@ -0,0 +1,21 @@ +using Refresh.Database.Models.Users; + +namespace RefreshTests.GameServer.Tests.Users; + +public class UserActionTests : GameServerTest +{ + [Test] + public void RenamesUser() + { + using TestContext context = this.GetServer(false); + GameUser? user = context.CreateUser("gamer1"); + + Assert.That(user.Username, Is.EqualTo("gamer1")); + + context.Database.RenameUser(user, "gamer2"); + user = context.Database.GetUserByObjectId(user.UserId); + Assert.That(user, Is.Not.Null); + + Assert.That(user.Username, Is.EqualTo("gamer2")); + } +} \ No newline at end of file