1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-11 00:17:19 +08:00

Add failing test

This commit is contained in:
Dan Balasescu 2025-03-04 12:33:33 +09:00
parent a9bf096201
commit 963df165df
No known key found for this signature in database

View File

@ -6,6 +6,7 @@ using Humanizer;
using NUnit.Framework;
using osu.Framework.Extensions.ObjectExtensions;
using osu.Framework.Testing;
using osu.Game.Extensions;
using osu.Game.Online.API.Requests.Responses;
using osu.Game.Online.Multiplayer;
using osu.Game.Online.Rooms;
@ -93,6 +94,29 @@ namespace osu.Game.Tests.NonVisual.Multiplayer
checkPlayingUserCount(1);
}
[Test]
public void TestJoinRoomWithManyUsers()
{
AddStep("leave room", () => MultiplayerClient.LeaveRoom());
AddUntilStep("wait for room part", () => !RoomJoined);
AddStep("create room with many users", () =>
{
var newRoom = new Room();
newRoom.CopyFrom(SelectedRoom.Value!);
newRoom.RoomID = null;
MultiplayerClient.RoomSetupAction = room =>
{
room.Users.AddRange(Enumerable.Range(PLAYER_1_ID, 100).Select(id => new MultiplayerRoomUser(id)));
};
RoomManager.CreateRoom(newRoom);
});
AddUntilStep("wait for room join", () => RoomJoined);
}
private void checkPlayingUserCount(int expectedCount)
=> AddAssert($"{"user".ToQuantity(expectedCount)} playing", () => MultiplayerClient.CurrentMatchPlayingUserIds.Count == expectedCount);