1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 10:15:16 +08:00
Commit Graph

645 Commits

Author SHA1 Message Date
Dean Herbert
0c819b9cfb Combine all test data BeatmapSetInfo creation into a single method 2021-11-24 18:07:32 +09:00
Dan Balasescu
8ce5324c8b
Merge pull request #15772 from peppy/remove-model-list-inits
Initialise `BeatmapSet.Beatmaps` list at construction time
2021-11-24 16:41:19 +09:00
Dean Herbert
44c34ca7b2 Revert changes causing BeatmapSet.Metadata to be expectedly null in some tests 2021-11-24 14:52:08 +09:00
Dean Herbert
8c60f37508 Fix cases of dynamically assigning Beatmaps to BeatmapSetInfo using list assignment 2021-11-24 13:27:37 +09:00
Dean Herbert
b1f3e98045 Fix incorrect usage of ID in TestSceneMultiplayerResults 2021-11-24 13:05:51 +09:00
Dan Balasescu
a521d1b835 Wait for ready button to be enabled first 2021-11-23 17:09:38 +09:00
Dan Balasescu
69a9fc9732 Fix a few more multiplayer test timeouts
These can be tested by adding a `Task.Delay(3000);` at the end of the
`MultiplayerClient.JoinRoom` task. The reason is typically that
`Client.Room` becomes not-null but the join task still hasn't completed
yet, so e.g. the ready button is still disabled.
2021-11-23 16:07:03 +09:00
Dan Balasescu
10bd7176e0 Fix potential test failure in TestSceneMultiplayerReadyButton
Couldn't exactly reproduce https://github.com/ppy/osu/runs/4294316800,
but I found a similar issue via:

```diff
diff --git a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
index 84b63a5733..29cac9b061 100644
--- a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
+++ b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
@@ -3,6 +3,7 @@

 using System;
 using System.Linq;
+using System.Threading;
 using System.Threading.Tasks;
 using NUnit.Framework;
 using osu.Framework.Allocation;
@@ -81,6 +82,8 @@ private void load(GameHost host, AudioManager audio)

                         await Client.ToggleReady();

+                        Thread.Sleep(1000);
+
                         readyClickOperation.Dispose();
                     });
                 }
```
2021-11-23 14:07:55 +09:00
Dan Balasescu
f64d20ed71 Fix APIRoom queue mode not updated on change 2021-11-22 13:46:01 +09:00
Dan Balasescu
cad6d1d25d Adjust test to match new logic 2021-11-22 11:20:19 +09:00
Dan Balasescu
53dbbd6d64 Compare playlist item IDs instead in tests 2021-11-22 11:17:32 +09:00
Dan Balasescu
4e625b78e2 Update queue mode names 2021-11-19 18:28:43 +09:00
Dan Balasescu
a6a786b167 Remove namespacing of queue tests 2021-11-19 15:43:11 +09:00
Dean Herbert
0c289bf8e5 Remove pointless namespace 2021-11-19 14:46:53 +09:00
Dan Balasescu
1dacc50ecb Merge branch 'master' into multi-queueing-modes 2021-11-18 15:16:27 +09:00
Dean Herbert
2d125893fc Add tests and disable selection on invalid items 2021-11-16 17:23:52 +09:00
Dan Balasescu
29d0d5badf Rename QueueModes -> QueueMode 2021-11-16 14:53:10 +09:00
Dan Balasescu
6fb2ccbb86 Add failing test ensuring room is updated after join 2021-11-13 02:32:00 +09:00
Dan Balasescu
060b4fa526 Fix failing multiplayer player test 2021-11-13 02:01:48 +09:00
Dan Balasescu
3b24ec3643 Merge branch 'master' into multi-queueing-modes 2021-11-12 22:16:04 +09:00
Dean Herbert
692e846acd Rename BeatmapSetInfo.OnlineBeatmapSetID to OnlineID to match interface 2021-11-12 17:52:44 +09:00
Dean Herbert
6a098a8634 Rename BeatmapInfo.OnlineBeatmapID to OnlineID to match interface 2021-11-12 17:46:24 +09:00
Dan Balasescu
5c8c121446 Update behaviour to match server (removing playlist items) + tests 2021-11-11 23:39:15 +09:00
Dan Balasescu
07a7b4bcdc Merge branch 'master' into multi-queueing-modes 2021-11-11 22:19:30 +09:00
Dan Balasescu
4db2ad1cb3
Merge branch 'master' into rename-ef-model-properties 2021-11-11 19:12:54 +09:00
Dean Herbert
51a353e12d Rename BeatmapInfo.Version to DifficultyName to match underlying interface 2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11 Rename BeatmapInfo.StarDifficulty to StarRating to match underlying interface 2021-11-11 17:19:46 +09:00
Bartłomiej Dach
f38d6ef8db
Add failing test steps 2021-11-11 09:01:50 +01:00
Dean Herbert
52c740b377 Add failing test showing team display display failure 2021-11-10 13:44:31 +09:00
smoogipoo
c716051530 Merge branch 'master' into multi-queueing-modes 2021-11-08 19:19:50 +09:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
smoogipoo
7bbb2a7a67 Fix post-merge issues 2021-11-05 15:57:32 +09:00
smoogipoo
e6deb0c873 Merge branch 'master' into multi-queueing-modes 2021-11-05 15:57:25 +09:00
Dean Herbert
9c926e5514 Remove BeatmapSetInfo.OnlineInfo and all usages 2021-11-04 15:23:04 +09:00
Dean Herbert
66f4516eee Allow creating sample API models without specifying a ruleset 2021-11-04 15:23:04 +09:00
Bartłomiej Dach
6e33fa088f
Add test case for drawable room with too long beatmap name 2021-11-03 17:32:53 +01:00
Dean Herbert
1bfa1365a0 Rename "null user" tests to better explain purpose 2021-11-02 17:13:37 +09:00
Dean Herbert
e472656b37 Add test coverage of room participants updating on room join 2021-11-02 17:13:37 +09:00
smoogipoo
887fa54988 Add FFA queueing mode tests 2021-11-01 19:25:47 +09:00
smoogipoo
1564048d8d Add one more test 2021-11-01 18:55:42 +09:00
smoogipoo
3db199292f Fix queue mode not passed from room to settings overlay 2021-11-01 18:52:57 +09:00
smoogipoo
7c6b3cb080 Rename test scene 2021-10-29 16:45:40 +09:00
smoogipoo
2408011c81 Don't replace identical playlist items 2021-10-29 16:44:51 +09:00
smoogipoo
e667ef4eea Add basic tests 2021-10-29 15:44:48 +09:00
smoogipoo
746f4a49c1 Add base test scene 2021-10-29 13:56:07 +09:00
smoogipoo
f076b72fbe Merge branch 'master' into multi-queueing-modes 2021-10-29 10:48:16 +09:00
smoogipoo
2b3e63470d Merge branch 'master' into always-unique-test-online-ids 2021-10-28 18:23:45 +09:00
Dean Herbert
8076e22e70 Replace weird import handling 2021-10-28 17:27:16 +09:00
smoogipoo
0e293471c2 Clean up multiplayer-screen tests by removing intermediate screen 2021-10-28 14:29:49 +09:00
smoogipoo
1213c5553a Remove forgotten attribute 2021-10-28 13:16:50 +09:00
Bartłomiej Dach
cd04ca1240
Remove unused using statement 2021-10-27 20:35:19 +02:00
smoogipoo
72bb72a559 Fix a case of missed base.SetUpSteps() 2021-10-27 20:56:11 +09:00
smoogipoo
a87d8d0359 Fix dependency missing in a few TestScenes
Hopefully these are rather temporary cases until a better solution is
found for these dependency-loading screens.
2021-10-27 20:47:40 +09:00
smoogipoo
48f280440c Fix incorrect clearing of room 2021-10-27 19:36:43 +09:00
smoogipoo
f3dba49aae Rename room managers 2021-10-27 19:36:32 +09:00
smoogipoo
676070946c Fix missed base.SetUpSteps() 2021-10-27 15:25:26 +09:00
Dean Herbert
95837990f3 Apply some second-pass inspections that appeared after previous changes 2021-10-27 13:09:30 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
6c38028d06 Fix gameplay chat display not losing focus on escape key press
Closes #15293.
2021-10-26 13:55:08 +09:00
smoogipoo
d7a98097a1 Make DrawableRoomPlaylist handle expired items 2021-10-22 21:04:52 +09:00
Dean Herbert
fd01a226db
Remove redundant parenthesis
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-10-20 18:11:33 +09:00
smoogipoo
116ce09e49 Merge branch 'master' into multi-queueing-modes 2021-10-20 17:27:25 +09:00
Dean Herbert
32cbf6e54b Add test coverage ensuring password popover keeps focus 2021-10-19 15:53:29 +09:00
Dean Herbert
8944b1dd78 Add basic test coverage of DrawableLoungeRoom 2021-10-19 15:36:27 +09:00
Dean Herbert
f7ec135b9b Fix TestSceneLoungeRoomsContainer crashing on selecting a room with a password 2021-10-19 15:36:27 +09:00
5ln
3529f34c98
Multi: Hide mods when spectating or Beatmap isn't Locally Available.
Signed-off-by: 5ln <xnafumie@gmail.com>
2021-10-18 02:01:50 +08:00
smoogipoo
6cc8184041 Make test scene create room immediately 2021-10-15 20:17:43 +09:00
smoogipoo
0fd5fa17c0 Add more thorough check 2021-10-14 16:50:38 +09:00
Dean Herbert
119e9ad83e Fix multiplayer gameplay flow test scene failures due to button not being ready 2021-10-14 15:58:42 +09:00
Dean Herbert
1a784b788d
Fix incorrect load state check
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-10-06 05:31:07 +09:00
Dean Herbert
e6efdae7c9 Add various logging output in an atttempt to figure multiplayer test failure 2021-10-05 18:53:20 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
smoogipoo
18ab6747f7 Fix tests 2021-09-30 12:01:28 +09:00
smoogipoo
67d847fbd3 Add room status text to DrawableRoom 2021-09-29 20:24:49 +09:00
smoogipoo
d89577b2e7 Add host to DrawableRoomParticipantsList 2021-09-29 19:34:40 +09:00
smoogipoo
73ee82ee2b Rename RecentParticipantsList -> DrawableRoomParticipantsList 2021-09-29 19:15:58 +09:00
Dean Herbert
a1f587f2c5 Add failing test coverage of password entry textbox not regaining focus 2021-09-17 18:25:25 +09:00
smoogipoo
cdb44d7239 Fix match footer test scene not working in visual testing 2021-09-15 17:16:11 +09:00
Bartłomiej Dach
7b9e501fa0
Merge branch 'master' into 14421-multi-password-error-handling 2021-09-14 22:58:20 +02:00
Dean Herbert
6851e0000d Add test coverage 2021-09-14 14:06:24 +09:00
Dean Herbert
3865988e48 Add test coverage for back button support in password popover 2021-09-10 02:15:13 +09:00
Dean Herbert
6fc46792d3 Fix test regressions 2021-09-09 00:39:54 +09:00
Dean Herbert
9e21f5a59c Rename LocalPlayer to User in mod select prefixes 2021-09-01 17:22:52 +09:00
Dan Balasescu
7be825f470
Merge pull request #14488 from frenzibyte/multi-spectator-player-leaving
Gray out and stop player instances who quit during multi-spectator sessions
2021-08-30 12:04:19 +09:00
Salman Ahmed
1650fbb8be Add failing test steps 2021-08-27 13:24:37 +03:00
Salman Ahmed
b7a0316194 Shorten test player count to 4 for less steps 2021-08-27 13:14:56 +03:00
Dean Herbert
97f27897b1 Add test coverage of mass multiplayer event firing 2021-08-27 18:57:35 +09:00
Dean Herbert
23414b0c63 Combine test scene to avoid huge copy paste 2021-08-27 18:44:44 +09:00
Dean Herbert
34d185d846 Convert final step to until step to avoid unnecessary delays 2021-08-27 18:39:36 +09:00
Jamie Taylor
e341f471b0
Add lobby sfx for join/leave/kick/ready/unready events 2021-08-26 15:29:22 +09:00
Salman Ahmed
5acaafa708 Make end accept one user ID rather than unnecessarily an array 2021-08-25 18:28:25 +03:00
Salman Ahmed
998abcbf31 Replace occurences of Enumerable.Range(PLAYER_1_ID, ...) with a method 2021-08-25 18:25:31 +03:00
Salman Ahmed
13acdb5f19 Add test coverage 2021-08-25 11:31:02 +03:00
Bartłomiej Dach
e503182a8d
Merge branch 'master' into activity-on-multiplayer-screens 2021-08-24 18:50:55 +02:00
smoogipoo
b719887810 Fix test compile errors 2021-08-24 13:34:23 +09:00
smoogipoo
df170afbc4 Fix multiplayer crashing when entering gameplay 2021-08-24 13:22:06 +09:00
smoogipoo
c2974cfc65 Add full multiplayer gameplay flow test 2021-08-24 13:20:01 +09:00
smoogipoo
610a162271 Merge branch 'master' into remove-current-room 2021-08-20 16:23:36 +09:00
Dan Balasescu
c95bf735fe
Merge branch 'master' into multiplayer-chat 2021-08-20 11:54:42 +09:00
Dean Herbert
e25592f325
Merge branch 'master' into fix-lounge-loading 2021-08-19 20:01:47 +09:00
smoogipoo
00be7f4cca Make RoomsContainer/DrawableRoom not resolve via DI 2021-08-19 16:52:54 +09:00
smoogipoo
1fd746524d Remove realtime room category, fix end-date showing for realtime 2021-08-19 16:09:28 +09:00
Dean Herbert
6d00ea3375 Allow toggling focus via binding 2021-08-19 14:19:59 +09:00
Dean Herbert
786beb9759 Fix missing initial state test step 2021-08-19 14:14:47 +09:00
Salman Ahmed
49bc3a8250 Refactor playlists room manager to handle dummy API requests 2021-08-19 06:25:47 +03:00
smoogipoo
eadf02933a Split lounge-specific implementation from DrawableRoom 2021-08-18 20:56:44 +09:00
smoogipoo
63af67f61b Cleanup around footers 2021-08-18 20:25:48 +09:00
Dean Herbert
1faf789f0e Allow expanding chat using key binding even when it is hidden 2021-08-18 18:25:21 +09:00
Dean Herbert
2099298444 Disallow clicking on chat textbox during gameplay 2021-08-18 17:30:50 +09:00
smoogipoo
5faf2df9b4 Revert unintentional change 2021-08-18 16:56:42 +09:00
smoogipoo
f3bc9c3e45 Merge branch 'master' into match-subscreen-redesign 2021-08-18 15:19:29 +09:00
Dan Balasescu
eaf7bd72fc
Merge branch 'master' into multiplayer-chat 2021-08-17 20:08:01 +09:00
smoogipoo
4b198d14eb Initial refactor of RoomSubScreen 2021-08-17 17:05:20 +09:00
Dean Herbert
a901fca54a
Merge branch 'master' into multi-polling-request-refactor 2021-08-17 16:23:46 +09:00
Dean Herbert
6a2d82c81a Add test coverage 2021-08-17 16:17:31 +09:00
Dean Herbert
e3b29df299 Add test scene for MultiplayerPlayer 2021-08-17 16:16:49 +09:00
smoogipoo
f4b7ee5c7f Merge branch 'master' into hide-player-settings-overlay 2021-08-17 13:44:33 +09:00
smoogipoo
5214731dc1 Refactor test a bit 2021-08-17 09:45:10 +09:00
smoogipoo
b672d4b936 Refactor RequestHandlingMultiplayerRoomManager to avoid confusion 2021-08-17 09:43:37 +09:00
smoogipoo
352949069a Move filter to LoungeSubScreen 2021-08-17 09:36:43 +09:00
smoogipoo
6320768a67 Merge branch 'master' into multi-polling-request-refactor 2021-08-17 08:44:56 +09:00
Salman Ahmed
67bac207cf Cover kicking a multiplayer room user with null User 2021-08-16 09:37:31 +03:00
Salman Ahmed
f82ed64aa7 Fix participant panel null user test no longer functioning properly
I guess the changes that involved `MultiplayerTestScene` having a test
user lookup cache caused this test case to false-pass silently.

Added an explicit assert which ensures the added user indeed has a null
`User` value.
2021-08-16 09:07:00 +03:00
Salman Ahmed
53c3eccfb5 Force HUD visibility mode to "Always" during testing 2021-08-16 07:21:37 +03:00
smoogipoo
08d347f10b Merge branch 'master' into multi-polling-request-refactor 2021-08-16 13:12:08 +09:00
Bartłomiej Dach
8f3fedade3
Merge branch 'master' into multiplayer-team-vs-results 2021-08-13 21:30:44 +02:00
Bartłomiej Dach
2e9ab78275
Split test scene into two to follow class split 2021-08-13 21:30:26 +02:00
Salman Ahmed
1fed9193f8 Revert reverted segment to fix failure 2021-08-13 15:24:10 +03:00
Salman Ahmed
c32ba9e38f Remove arbitrarily-set wait step with until step instead, keeping the comment 2021-08-13 15:06:11 +03:00
Salman Ahmed
7cf6b551d3 Replace until step with wait step with explanatory comment 2021-08-13 13:01:17 +03:00
smoogipoo
fbadc4897e Remove test scene 2021-08-13 18:28:20 +09:00
Salman Ahmed
f5cea0cacd Fix failing test and rename to match new behaviour 2021-08-13 12:12:20 +03:00
smoogipoo
8910781bcd Move listing polling component to LoungeSubScreen 2021-08-13 17:39:09 +09:00
Dean Herbert
df24f7a81e
Merge pull request #14256 from smoogipoo/multiplayer-header-redesign
Update multiplayer header to the latest designs
2021-08-13 16:16:25 +09:00
Dean Herbert
732dcd30c7 Merge branch 'master' into multiplayer-team-vs-results 2021-08-13 16:03:10 +09:00
Dean Herbert
699a61500a
Merge pull request #14264 from smoogipoo/fix-multi-spectate-test-failure
Fix multiplayer spectating test failures
2021-08-13 14:53:11 +09:00
smoogipoo
755b6460b6 Fix multiplayer navigation test failure 2021-08-13 14:05:44 +09:00
smoogipoo
8fc0edb283 Fix some multiplayer test failures 2021-08-13 13:54:52 +09:00
Salman Ahmed
fc22e806f4 Cover newly hidden/expired elements in existing test 2021-08-13 07:30:24 +03:00
Salman Ahmed
1892db7f37 Add test coverage 2021-08-13 06:38:28 +03:00
smoogipoo
7aa361d772 Remove now-incorrect test 2021-08-13 09:02:19 +09:00
Bartłomiej Dach
70005cb39d
Merge branch 'master' into multiplayer-team-vs-results 2021-08-12 20:39:48 +02:00
Bartłomiej Dach
53b4cdfb02
Handle ties in team vs. results screen 2021-08-12 20:38:24 +02:00
Bartłomiej Dach
d9190607e4
Add test coverage for both teams winning 2021-08-12 20:21:53 +02:00
Bartłomiej Dach
f06f13215b
Split off multiplayer team results screen to separate class
The previous version tried to keep both normal multiplayer and team
multiplayer results as one screen, but didn't check that team-specific
components aren't null in `LoadComplete()`.

To decrease number of conditional, split off the team results screen to
a separate implementation, and choose one or the other at push time in
`MultiplayerPlayer`, depending on team count.
2021-08-12 20:01:31 +02:00
Bartłomiej Dach
d08d22e3e9
Ensure tests wait for screen load 2021-08-12 19:57:05 +02:00
Dean Herbert
8249ce7988
Merge branch 'master' into multiplayer-header-redesign 2021-08-12 21:00:46 +09:00
smoogipoo
83703e4283 Add colour provider to online play dependencies 2021-08-12 20:08:14 +09:00
Dean Herbert
7b66616dc4 Simplify logic and test/fix edge case 2021-08-12 19:47:26 +09:00
Dean Herbert
8a67304b9f Fix recent participants hidden user logic not handling edge case correctly
Hiding just one user never makes sense, so this will now always show up
to the required circle count until two users are required to be hidden.
This will make the listing more consistent with the width requirement
spec.
2021-08-12 19:47:26 +09:00