1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-18 18:12:59 +08:00
Commit Graph

166 Commits

Author SHA1 Message Date
smoogipoo
0e293471c2 Clean up multiplayer-screen tests by removing intermediate screen 2021-10-28 14:29:49 +09:00
smoogipoo
f3dba49aae Rename room managers 2021-10-27 19:36:32 +09:00
smoogipoo
a4397ee68c Add playlist continuation flow 2021-10-22 22:07:41 +09:00
smoogipoo
1b4be61ed1 Fix finished-play state not handled correctly 2021-10-22 21:16:10 +09:00
smoogipoo
4e6a02bde9 Fix missing QueueMode copies 2021-10-22 20:14:04 +09:00
smoogipoo
db87e42d47 Remove beatmap/ruleset/etc from MultiplayerRoomSettings 2021-10-22 16:48:28 +09:00
smoogipoo
eed8fa8d69 Expand comment a bit 2021-10-15 00:20:45 +09:00
smoogipoo
e6ee360511 Fix intermittent multiplayer tests 2021-10-15 00:10:39 +09:00
Salman Ahmed
f4ae587a33 Extract room request handling logic to its own class 2021-08-19 06:24:06 +03:00
smoogipoo
f2340c6dac Privatise mutable list 2021-08-17 09:48:33 +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
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
Dean Herbert
e6b3aba6e1 Fix incorrectly directed call in TestMultiplayerClient 2021-08-14 14:08:29 +09:00
Dan Balasescu
60e988aac3
Merge branch 'master' into multiplayer-kick-support 2021-08-12 11:46:56 +09:00
Dean Herbert
e8ad0fba75 Add required server methods for kicking users 2021-08-11 17:20:41 +09:00
Dean Herbert
ea6e441dec Simplify method of marking players as playing in test scenes 2021-08-09 19:21:22 +09:00
Dean Herbert
551929cf5a Simplify method of marking players as playing in test scenes 2021-08-09 19:18:13 +09:00
Dean Herbert
1e5d9003d3 Add the ability for tests to alter the room and user states which during testing 2021-08-09 16:58:36 +09:00
Dean Herbert
75426f84f1 Fire initial match user states in TestMultiplayerClient 2021-08-03 23:42:37 +09:00
Dean Herbert
9bfb0f1294 Add basic team vs handling to TestMultiplayerClient
Not sure this is the best place to do so... I can foresee this class
getting much larger than we want it to.
2021-08-03 23:42:37 +09:00
Dean Herbert
70da58323a Drop MatchRuleset terminology completely 2021-08-03 15:45:17 +09:00
Dean Herbert
9d1e95caf0 Add flow for sending match ruleset specific messages to the server 2021-08-02 18:47:26 +09:00
Dean Herbert
888954747c Rename class, add commenting and avoid firing requests to create rooms for testing purposes 2021-07-26 15:47:13 +09:00
smoogipoo
d6aa15e5d7 Remove local APIRoom from test multiplayer client 2021-07-19 20:19:23 +09:00
smoogipoo
a5a0f12e19 Also copy password in test room manager 2021-07-19 20:07:56 +09:00
smoogipoo
26d0eea485 Set HasPassword correctly in the response room 2021-07-19 20:03:32 +09:00
smoogipoo
8c0daa89a0 Make test multiplayer client validate password 2021-07-19 20:03:27 +09:00
smoogipoo
063f14da98 Update test room manager to not return passwords 2021-07-19 20:03:27 +09:00
Dean Herbert
5148069efe Update signatures in line with no-overload methods (unsupported by signalr) 2021-07-12 15:49:19 +09:00
smoogipoo
c93c615f5e Also fix up interface names 2021-06-25 20:15:30 +09:00
smoogipoo
1ed61b9b98 Fix up dependencies class names 2021-06-25 20:11:38 +09:00
smoogipoo
a27a647ae7 Rename RoomDependencies -> OnlinePlayDependencies 2021-06-25 18:07:47 +09:00
smoogipoo
04279e7f5c Add some xmldocs 2021-06-25 18:02:53 +09:00
smoogipoo
c0d2b41d4c Move SpectatorClient into multiplayer dependencies 2021-06-25 17:55:16 +09:00
smoogipoo
7aefbe3da1 Move UserLookupCache inside dependencies 2021-06-25 17:37:02 +09:00
smoogipoo
81a812e216 Rework MultiplayerTestScene to make use of OnlinePlayTestScene 2021-06-25 15:00:10 +09:00
smoogipoo
aa5d22d04a Remove "test container", make everything go through OnlinePlayTestScene 2021-06-25 13:02:19 +09:00
smoogipoo
5820793d11 Make TestMultiplayerRoomContainer inherit TestRoomContainer 2021-06-24 21:02:29 +09:00
smoogipoo
d197a7f6f5 Rename multiplayer client classes 2021-05-20 15:39:45 +09:00
smoogipoo
811282a975 Add failing test 2021-05-11 19:01:41 +09:00
Dean Herbert
120fb8974d Combine more instances of test player IDs 2021-04-26 17:22:16 +09:00
smoogipoo
0ee73b8e53 Add failing test 2021-04-22 23:22:44 +09:00
smoogipoo
93c5935ebc Add match subscreen support + test 2021-04-07 20:46:30 +09:00
smoogipoo
6be9c9f0f4 Link up ready button to spectate state 2021-04-07 16:35:50 +09:00
Dean Herbert
aeff9bd853 Add return bool to HandleRequest to better trigger failures 2021-03-23 18:17:29 +09:00
Dean Herbert
b1cd01ceb8 Apply ConfigureAwait changes to game side 2021-03-08 14:36:35 +09:00
smoogipoo
6affe33fb2 Fix another test scene 2021-03-03 19:40:19 +09:00
smoogipoo
30ff0b83c1 Fix test failures due to unpopulated room 2021-03-02 19:06:21 +09:00
smoogipoo
7adb33f40e Fix beatmap getting nulled due to failing web request 2021-03-01 17:24:54 +09:00
smoogipoo
f7e4cfa4d0 Fix initial room settings not being returned correctly 2021-03-01 17:24:32 +09:00
smoogipoo
97bb217830 Fix test room playlist items not getting ids 2021-03-01 17:24:05 +09:00
Dean Herbert
5fbed05d04
Merge pull request #11551 from smoogipoo/fix-leave-room-race-2
Fix client potentially not leaving a room on exiting multiplayer
2021-02-08 19:23:14 +09:00
smoogipoo
dbea6d4cee Remove unused using 2021-02-05 00:57:23 +09:00
smoogipoo
18e5081523 Fix test failures 2021-02-05 00:42:38 +09:00
smoogipoo
f538963607 Extra mods -> user mods 2021-02-01 17:57:32 +09:00
smoogipoo
ac2a995041 Add user and panel states 2021-02-01 17:54:56 +09:00
smoogipoo
964976f604 Use a task chain and fix potential misordering of events 2021-01-25 21:01:39 +09:00
Salman Ahmed
560b1e970c
Merge branch 'master' into user-beatmap-downloading-states 2021-01-13 22:31:31 +03:00
Salman Ahmed
90fb67b377 Update code in-line with decided direction 2021-01-11 20:52:24 +03:00
Bartłomiej Dach
8c3955d341 Improve safety of ongoing operation tracker
Finishing an operation started via
`OngoingOperationTracker.BeginOperation()` was risky in cases where the
operation ended at a callback on another thread (which, in the case of
multiplayer, is *most* cases). In particular, if any consumer registered
a callback that mutates transforms when the operation ends, it would
result in crashes after the framework-side safety checks.

Rework `OngoingOperationTracker` into an always-present component
residing in the drawable hierarchy, and ensure that the
`operationInProgress` bindable is always updated on the update thread.
This way consumers don't have to add local schedules in multiple places.
2021-01-09 22:45:24 +01:00
Bartłomiej Dach
ff60d652ed Move out test ongoing operation tracker to higher level 2021-01-08 22:28:21 +01:00
Salman Ahmed
dfa8be9173 Add beatmap availability change state & event methods 2021-01-03 05:48:49 +03:00
Dean Herbert
046a76cb1d Allow null users to still be displayed in the participant list
The fix here is correcting the access of `user.Country`. The deicision
to have null users display is because this is the best we can do (if
osu-web could not resolve the user). We still want the users in the
lobby to be aware of this user's presence, rather than hiding them from
view.

osu-stable does a similar thing, showing these users as `[Loading]`. I
decided to go with blank names instead because having *any* text there
causes confusion. We can iterate on this in future design updates.
2020-12-28 15:03:44 +09:00
Bartłomiej Dach
83fb7c7a1a Re-namespace all files in OnlinePlay directory 2020-12-25 16:50:09 +01:00
Dean Herbert
5d4b73baa5 RealtimeMultiplayer -> Multiplayer 2020-12-25 14:10:59 +09:00