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

198 Commits

Author SHA1 Message Date
Dean Herbert
918315aa65
Split out methods so retrieving the room is not a callback function 2025-03-04 19:19:53 +09:00
Dan Balasescu
d923a478e9
Remove unused method 2025-02-13 00:04:33 +09:00
Dan Balasescu
205d6ecffb
Remove SelectedRoom abstraction from OnlinePlayTestScene 2025-02-12 22:55:19 +09:00
Dan Balasescu
38cd4fa56a
Merge branch 'master' into room-management-lio 2025-02-11 21:19:32 +09:00
Dan Balasescu
7c38089c75
Rename methods 2025-01-23 16:27:38 +09:00
Dan Balasescu
9a623257f5
Adjust + fix tests 2025-01-23 16:27:38 +09:00
Dan Balasescu
02369baec4
Join/Leave rooms via multiplayer server
Relevant functionality has been removed from `RoomManager` in the
process.
2025-01-22 21:44:45 +09:00
Dan Balasescu
ad28de8ae3
Create multiplayer rooms via multiplayer server 2025-01-17 21:44:40 +09:00
Dan Balasescu
0093af8f55
Rewrite everything to better support spectator server messaging 2024-12-25 22:24:21 +09:00
Dan Balasescu
209380cbac
Enable NRT in TestMultiplayerRoomManager 2024-11-21 21:03:12 +09:00
Dan Balasescu
34c0f72dd6
Make Room.Playlist non-bindable 2024-11-15 15:51:01 +09:00
Dan Balasescu
89de4f0f87
Make Room.AutoStartDuration non-bindable 2024-11-15 14:42:45 +09:00
Dan Balasescu
ec5be6dbc3
Make Room.Password & Room.HasPassword non-bindable 2024-11-15 14:42:18 +09:00
Dan Balasescu
198681e644
Make Room.QueueMode non-bindable 2024-11-15 14:42:18 +09:00
Dan Balasescu
81e4cb348f
Make Room.Type non-bindable 2024-11-15 14:42:18 +09:00
Dan Balasescu
6160df1586
Make Room.Name non-bindable 2024-11-15 14:29:15 +09:00
Dan Balasescu
99762da7b8
Make RoomID non-bindable
Most important changes are to `RoomSubScreen` and `PlaylistsRoomSubScreen`, because those are the only two cases that now bind to the event instead.
2024-11-13 16:28:54 +09:00
Dan Balasescu
72564b5c98
Make CurrentPlaylistItem not a bindable 2024-11-12 18:17:24 +09:00
Dean Herbert
e75ae4a37b
More hardening of TestMultiplayerClient to attempt to fix test failures 2024-08-19 04:04:24 +09:00
Dan Balasescu
20ae88b0a0
Revert unnecessary changes 2024-02-02 21:05:50 +09:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections 2024-02-02 21:00:28 +09:00
Dan Balasescu
f3530a79b1
Add test 2023-12-01 21:34:20 +09:00
Dan Balasescu
a94180c8c6
Rename LoadAborted -> GameplayAborted, AbortGameplayReal -> AbortMatch 2023-12-01 18:26:59 +09:00
Dan Balasescu
894c31753b
Add initial support for aborting multiplayer games 2023-12-01 15:31:06 +09:00
Bartłomiej Dach
1c612e2e0c
Implement client-side disconnection flow 2023-11-21 15:15:45 +09:00
Dean Herbert
56e27f1c27
Merge branch 'master' into multiplayer-invites 2023-10-12 18:17:15 +09:00
Marvin Schürz
574dc67a9e Add Invited task to multiplayer client 2023-10-02 22:53:28 +02:00
Dean Herbert
56b5f52e83 Update all dependencies (except for Moq) 2023-09-16 15:37:31 +09:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Bartłomiej Dach
474f7c2bc0
Fix code quality inspection 2023-06-03 16:50:58 +02:00
Dean Herbert
7a5349d747 Remove constructor from MultiplayerPlaylistItem which is only used in tests 2023-05-25 20:09:40 +09:00
Dean Herbert
4a7d7c6ed9 Use MaxBy in all locations that can and update inspection level to match dotnet-build 2022-12-19 16:47:10 +09:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
770c1ade2f Add test coverage of track rate adjusting during multi spectator 2022-09-07 20:00:24 +09:00
Dan Balasescu
aaa6f963bd Fix potential test failures due to Setup/SetUpSteps ordering 2022-07-29 15:27:39 +09:00
Dan Balasescu
084a65578c Always clone messages incoming from client-side 2022-07-01 19:36:37 +09:00
Dan Balasescu
37acec1952 Isolate client's LocalUser from TestMultiplayerClient 2022-07-01 19:23:41 +09:00
Dan Balasescu
b64c0d011c Isolate client's Room from TestMultiplayerClient 2022-07-01 19:23:25 +09:00
Dan Balasescu
0be858b5bf Rename APIRoom -> ClientAPIRoom, remove unused asserts 2022-07-01 19:21:59 +09:00
Dan Balasescu
1c2ffb3bc4 Fix server-side objects being sent to client 2022-07-01 19:21:53 +09:00
Dean Herbert
158f0a1f23 Remove remaining Room!=null checks in TestMultiplayerClient where possible 2022-06-23 17:38:34 +09:00
Dean Herbert
bc557bacf0 Remove room null assertion in TestMultiplayerClient.ChangeState to avoid assert
This method is run from async contexts, but `get_Room` asserts update
thread which is not the case. Was causing silent test failures (showing
as pass but failing `dotnet-test` via return code):

TestSceneMultiplayer.TestGameplayFlow

```
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: Score preparation failed!
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: NUnit.Framework.AssertionException: :
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Framework.Logging.ThrowingTraceListener.Fail(String message1, String message2)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.TraceInternal.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.TraceInternal.TraceProvider.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at System.Diagnostics.Debug.Fail(String message, String detailMessage)
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Online.Multiplayer.MultiplayerClient.get_Room() in /opt/buildagent/work/ecd860037212ac52/osu.Game/Online/Multiplayer/MultiplayerClient.cs:line 98
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Tests.Visual.Multiplayer.TestMultiplayerClient.ChangeState(MultiplayerUserState newState) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Tests/Visual/Multiplayer/TestMultiplayerClient.cs:line 275
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Screens.OnlinePlay.Multiplayer.MultiplayerPlayer.PrepareScoreForResultsAsync(Score score) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Screens/OnlinePlay/Multiplayer/MultiplayerPlayer.cs:line 223
[13:13:17] :         [dotnet test] [runtime] 2022-06-22 13:13:16 [error]: at osu.Game.Screens.Play.Player.prepareScoreForResults() in /opt/buildagent/work/ecd860037212ac52/osu.Game/Screens/Play/Player.cs:line 747
```
2022-06-23 14:10:20 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dan Balasescu
08d250fe58 Rename MatchStarted() -> GameplayStarted() 2022-04-21 22:39:24 +09:00
Dean Herbert
9b433280bd Remove countdown implementation from TestMultiplayerClient 2022-04-13 21:24:33 +09:00
Dean Herbert
abb42a54fd Fix MultiplayerTestScene not actually setting match type correctly 2022-04-11 17:57:05 +09:00
Dan Balasescu
e1f147a207 Mutate playlist in EditUserPlaylistItem 2022-04-04 13:46:41 +09:00
Dan Balasescu
6e6271d0c0 Fix "server-side" room playlist not updated
Remove unused using
2022-04-01 18:32:10 +09:00
Dan Balasescu
2553cfed75 Match new server ready/unready logic 2022-03-25 17:04:45 +09:00
Dean Herbert
b1f0f89fdd Simplify AutoStart and Host checks 2022-03-25 15:41:01 +09:00