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

836 Commits

Author SHA1 Message Date
Dean Herbert
6a61fd95eb Tidy up base implementation 2022-04-11 19:19:45 +09:00
Dean Herbert
b52f070fdb Update existing multiplayer leaderboard tests to use new mocked implementation 2022-04-11 19:15:57 +09:00
Dean Herbert
0ccac24f76 Split out base implementation of MultiplayerGameplayLeaderboard test 2022-04-11 19:15:46 +09:00
Dean Herbert
779f7390b7 Add test coverage of DrawableRoom actually showing post-retrieval text 2022-04-11 13:44:34 +09:00
Dean Herbert
d17890ca9a Replace a couple more local test beatmap cases which can instead use TestResources methods 2022-04-06 15:04:15 +09:00
Dean Herbert
220d7bc6db Fix dangerous realm operation in TestSceneMultiplayerMatchSongSelect
The import process was running on the async load thread, but then
accessed from the access thread later on. This seemed to somehow pass
fine in headless runs, but would fail on visual test execution
(specifically on `TestBeatmapConfirmed()`).
2022-04-06 14:01:41 +09:00
Dean Herbert
a3695c7e97
Merge branch 'master' into fix-spectator-seeks 2022-04-06 12:58:43 +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
37dea0ff21 Add failing test case 2022-04-01 17:05:11 +09:00
Dean Herbert
c3a0f0d6b8 Update tests in line with new button behaviour 2022-03-26 14:43:41 +09:00
Dean Herbert
0146717fcb Adjust test button sizing to better match actual usage 2022-03-26 14:29:31 +09:00
Dean Herbert
f92a31cd39
Merge pull request #17402 from smoogipoo/multiplayer-auto-countdown
Add multiplayer auto-start countdown timer
2022-03-25 20:31:14 +09:00
Dean Herbert
76abce4867 Add missing wait calls on async test steps 2022-03-25 18:38:26 +09:00
Dan Balasescu
c1649714f4 Add a few more ready button tests 2022-03-25 17:12:00 +09:00
Dan Balasescu
d5a37c2237 Remove irrelevant test 2022-03-25 17:06:04 +09:00
Dean Herbert
aa9e642e40
Merge branch 'master' into pin-multiplayer-host 2022-03-25 16:49:35 +09:00
Dan Balasescu
f0d132b16e Rename FinishCountdown() -> SkipToEndOfCountdown() 2022-03-24 15:21:46 +09:00
Dan Balasescu
96a447f68b Rename Multiplayer prefix to button classes 2022-03-24 14:28:38 +09:00
Dan Balasescu
90c7945bca Re-remove PopoverButton class with better test fix 2022-03-24 14:26:31 +09:00
Dean Herbert
6f529cf7a4 Merge branch 'master' into fix-spectator-seeks 2022-03-24 14:24:20 +09:00
Dan Balasescu
547418e47e Revert "Remove PopoverButton class"
This reverts commit 6b712be97d.
2022-03-24 11:15:51 +09:00
Dan Balasescu
34a367b369 Merge branch 'master' into multiplayer-countdown-timers-2 2022-03-23 15:40:50 +09:00
Dan Balasescu
a83a90e675 Rename countdown Delay -> Duration 2022-03-23 15:21:16 +09:00
Dan Balasescu
6b712be97d Remove PopoverButton class 2022-03-23 10:40:38 +09:00
Dan Balasescu
9138aaf780 Split MultiplayerReadyButton 2022-03-23 10:38:56 +09:00
Dean Herbert
483fb84b56 Fix typo in FinishCountdown method 2022-03-22 16:50:13 +09:00
Dean Herbert
2c4a6c2465 Add missing async safeties to new tests 2022-03-22 16:46:42 +09:00
Salman Ahmed
5c1e11c153
Merge branch 'master' into queue-list-counter 2022-03-21 05:01:09 +03:00
hwabis
06136b2247 Revert OsuTabItem Text to protected, update tab count test 2022-03-20 21:37:02 -04:00
hwabis
63b6686384 make test name clearer 2022-03-20 16:28:05 -04:00
hwabis
8fbdd06895 add queue tab count test 2022-03-20 16:24:41 -04:00
Dan Balasescu
04f4e81852 Rename start countdown request 2022-03-18 21:05:19 +09:00
Dan Balasescu
c97aa3a26f Fix intermittent ready button test failure 2022-03-18 18:57:34 +09:00
Dean Herbert
4bc7c69bf7 Fix test regression due to missing argument 2022-03-18 16:27:14 +09:00
Dean Herbert
b5ff9ed13a Add test coverage of multiplayer being paused when users are still loading 2022-03-18 15:07:42 +09:00
Dan Balasescu
72843a6797 Add support for starting/stopping countdowns 2022-03-18 14:33:09 +09:00
Dan Balasescu
efce471f0b Add countdown button + popover 2022-03-18 14:31:57 +09:00
Dan Balasescu
b76a87e6f8 Split ready button visual logic into button itself 2022-03-18 14:31:57 +09:00
Salman Ahmed
a7ddfc7f51 Add step for returning host back to local user 2022-03-18 08:08:31 +03:00
Salman Ahmed
d0cc68bc97 Add test coverage 2022-03-18 07:26:10 +03:00
Salman Ahmed
4adb8c205f Add step to switch hosts randomly in TestManyUsers 2022-03-18 07:18:49 +03:00
Dean Herbert
e3ab5de8cd Tidy up constructor logic overlap with gameplayStartTime 2022-03-18 01:35:50 +09:00
Dan Balasescu
da0ffab14e Integrate ready button implementation 2022-03-17 18:43:04 +09:00
Dan Balasescu
461d41529b Integrate spectate button implementation 2022-03-17 18:36:33 +09:00
Dean Herbert
94ff6a338f
Merge branch 'master' into scoreprocessor-rework 2022-03-09 23:04:18 +09:00
Dan Balasescu
729af28a64 Fix intermittent test failure 2022-03-09 00:48:12 +09:00
Dan Balasescu
94d5e2f264 Fix test failure ripple through entire TestScene 2022-03-09 00:48:03 +09:00
Dan Balasescu
f1c40bd9ed Rework GetScore() method signatures + implementations
Rename legacy-facing overload to mention as much
2022-03-08 22:30:44 +09:00
Dan Balasescu
e947c97e10
Merge branch 'master' into spectator-reliability 2022-02-25 20:20:30 +09:00
Dean Herbert
926abf7a0c
Merge pull request #16985 from smoogipoo/multi-spectator-chat
Add chat display to multiplayer spectator
2022-02-25 20:19:07 +09:00
Dan Balasescu
3a03833912
Merge pull request #16890 from peppy/beatmap-decoder-ruleset-store
Fix `LegacyBeatmapDecoder` not populating correct rulesets
2022-02-25 19:03:43 +09:00
Dan Balasescu
f9d9ad388b Add chat display to multiplayer spectator screen 2022-02-25 16:03:28 +09:00
Dean Herbert
c94e7e2abe Add ability to simulate network failures to TestSpectatorClient 2022-02-24 02:23:48 +09:00
Dean Herbert
14c8ce50a0 Prefix all test send methods in TestSpectatorClient with Send 2022-02-24 02:23:48 +09:00
Dean Herbert
98c008b95f Fix test failures due to order change 2022-02-21 19:48:39 +09:00
Dean Herbert
ab8b502709 Add test coverage of spotlights being at the top of the listing 2022-02-21 18:01:46 +09:00
Dean Herbert
631c23ea3a Merge branch 'master' into beatmap-decoder-ruleset-store 2022-02-18 16:52:33 +09:00
Dean Herbert
0138f22c8d Update existing usages to point to RealmRulesetStore 2022-02-16 17:13:54 +09:00
Dean Herbert
7e24b36f26 Merge branch 'master' into remove-playlistitem-beatmap 2022-02-16 14:24:57 +09:00
Dean Herbert
6a08fd57ef Rename "client" fields in tests to specify whether spectator or multiplayer 2022-02-16 09:52:18 +09:00
Dean Herbert
187870b794 Merge branch 'master' into fix-multi-cache-dependencies 2022-02-16 09:44:37 +09:00
Dan Balasescu
ea5bb46fb8
Merge branch 'master' into net6 2022-02-16 00:40:04 +09:00
Dan Balasescu
f5b34e0313 Fix some test failures due to now-async lookups 2022-02-16 00:01:22 +09:00
Dan Balasescu
bdc3b76df0 Remove beatmap bindable from PlaylistItem 2022-02-15 23:50:08 +09:00
Dan Balasescu
539cbe62c6 Fix incorrect usages of user lookup cache in tests 2022-02-15 21:23:24 +09:00
Dan Balasescu
c48a0dc993 Move UserLookupCache to online play test dependencies 2022-02-15 20:56:46 +09:00
Dan Balasescu
03106e846c Fix test failures due to async mod icon loads 2022-02-15 17:15:00 +09:00
Dan Balasescu
5b765581d8 Fix free mod selection not showing allowed mods 2022-02-15 16:28:15 +09:00
Dan Balasescu
efeba30b9f Remove ruleset and mod bindables from PlaylistItem 2022-02-15 16:28:15 +09:00
Dean Herbert
02f58a82fc Use WaitSafely() in tests where it was not already being used 2022-02-15 02:35:08 +09:00
Dean Herbert
5b30921cbf Merge branch 'master' into net6 2022-02-14 22:06:35 +09:00
Dean Herbert
6005daeba8 Fix fire-and-forget async calls to use WaitSafely 2022-02-11 16:02:42 +09:00
Dan Balasescu
ffc4c64f7e Unify namings across the board 2022-02-09 12:10:07 +09:00
Dan Balasescu
d5269ba05b Merge branch 'fix-spectator-restart-crash' into spectator-state-rework 2022-02-04 17:59:18 +09:00
Dan Balasescu
b41655d5b9 Fix crash when gameplay starts while in multi-spectator screen 2022-02-04 17:47:41 +09:00
Dan Balasescu
d4ebff6ea1 Add failing test 2022-02-03 23:18:22 +09:00
Dan Balasescu
483977d5c8 Merge branch 'master' into spectator-state-rework 2022-02-03 19:59:07 +09:00
Dan Balasescu
fcbba3d948 Rename PlayingUserStates -> WatchingUserStates 2022-02-02 23:11:29 +09:00
Dan Balasescu
b5fb3b7dae Fix crash when selecting swap mod as freemod 2022-02-02 18:42:22 +09:00
Dan Balasescu
502e6af008 Remove PlayingUsers list from SpectatorClient 2022-02-01 14:42:30 +09:00
Salman Ahmed
4f4f60248f Add failing test case 2022-01-30 01:46:10 +03:00
Dean Herbert
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
Dean Herbert
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
Dean Herbert
778d2a71b4 Remove Task from the inner-most Import method in RealmArchiveModelImporter
One of my pending work items for post-realm merge.

The lowest-level import task is no longer asynchronous, as we don't want
it to span multiple threads to allow easier interaction with realm.
Removing the `Task` spec simplifies a heap of usages.

Individual usages should decide whether they want to run the import
asynchronously, by either using an alternative override or spooling up a
thread themselves.
2022-01-25 15:30:29 +09:00
Dean Herbert
3e5c9e8436 Fix cases of Access instead of Realm 2022-01-25 12:58:15 +09:00
Dean Herbert
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
Dan Balasescu
3e5d29ed00
Merge pull request #16505 from peppy/remove-base-difficulty-usage
Remove all usage of `BaseDifficulty` (and access `Difficulty` instead)
2022-01-19 13:53:55 +09:00
Dean Herbert
67bf95bc91 Remove all usage of AuthorString 2022-01-18 23:30:40 +09:00
Dean Herbert
7f65f3a47f Remove all usage of BaseDifficulty (and access Difficulty instead) 2022-01-18 22:57:39 +09:00
Dean Herbert
a59dcccab7 Add local ContextFactory caching to all remaining test scenes that create local managers 2022-01-14 19:59:21 +09:00
Dean Herbert
51251e3204 Fix CI reported warnings 2022-01-12 22:39:00 +09:00
Dean Herbert
7dba3c3551 Fix most remaining test issues 2022-01-12 17:49:11 +09:00
Dean Herbert
dd19487eb8 Fix custom import process in TestSceneDrawableRoomPlaylist not working with realm 2022-01-12 17:49:11 +09:00
Dean Herbert
1f9318265e Update ToLive usages in line with recent changes 2022-01-12 17:00:16 +09:00
Dean Herbert
31a3161189 Make tests compile again 2022-01-12 17:00:16 +09:00
Dean Herbert
00e3af3366 Update model manager and many related classes to get things compiling again 2022-01-12 17:00:00 +09:00
Dean Herbert
6a671b0a52 Remove unnecessary assigns of BeatmapSetInfo.Metadata 2022-01-12 16:39:36 +09:00
Dean Herbert
fda529de26 Update usages of APIUser to RealmUser 2022-01-12 16:39:36 +09:00
Dean Herbert
213d89b479 Update null fallback cases involving OnlineID 2022-01-12 16:39:36 +09:00
Dan Balasescu
af9fad00c3 Merge branch 'master' into async-deadlock-safety 2022-01-10 16:11:09 +09:00
Bartłomiej Dach
446962446e
Add test coverage for correct revert of mods when play starts at song select 2022-01-08 14:50:58 +01:00
Bartłomiej Dach
3dd5705a81
Add test coverage for correct revert of mods after new item is queued 2022-01-08 14:50:58 +01:00
Bartłomiej Dach
50077f05bd
Add test coverage for correct revert of ruleset when play starts at song select 2022-01-08 14:50:57 +01:00
Bartłomiej Dach
f026973b19
Add failing test for ruleset incorrectly applying from latest picked item 2022-01-08 14:50:54 +01:00
Dean Herbert
00177a3ae1 Update usages to new naming 2022-01-06 22:54:43 +09:00
Dean Herbert
73b40e6833 Replace usage of .Result with .WaitSafelyForResult 2022-01-04 11:51:41 +09:00
Dean Herbert
031a40af6a Replace usages of Wait with WaitSafely 2022-01-04 11:51:41 +09:00
Dean Herbert
f53a675ca3 Fix TestSceneMultiSpectatorLeaderboard not waiting for user population 2021-12-31 00:48:31 +09:00
Dean Herbert
cfdfe81afb
Merge pull request #16205 from smoogipoo/fix-multiplayer-tests
Fix multiplayer test failures when checking for parted room
2021-12-22 13:42:05 +09:00
Dan Balasescu
24c6f8fafa Fix multiplayer test failures when checking for parted room 2021-12-22 12:55:37 +09:00
Dan Balasescu
ee64ab6383 Fix delete button test failures
Can be tested by adding a Thread.Sleep() in
DrawableRoomPlaylistItem.load().
2021-12-22 09:55:19 +09:00
Dan Balasescu
e2f8c71081 Fix test 2021-12-21 18:38:31 +09:00
Dean Herbert
bb3f375958 Add note about local button clicking usage 2021-12-21 13:49:51 +09:00
Dean Herbert
aad55ef89e Remove unused method in TestSceneMultiplayerQueueList 2021-12-21 13:49:51 +09:00
Dean Herbert
9aff646ff4 Centralise all multiplayer button clicking test logic
This adds the "wait for enabled" check in a way that can be easily
reused, as it keeps getting missed in test implementations.

This particular commit hopefully fixes
https://github.com/ppy/osu/runs/4583845033?check_suite_focus=true.
2021-12-21 13:49:51 +09:00
Bartłomiej Dach
d8be455a43
Merge branch 'master' into fix-ready-button-test 2021-12-20 11:02:43 +01:00
Dean Herbert
ec0a6735eb Rename TestMultiplayerScreenStack to TestMultiplayerComponents 2021-12-20 18:24:59 +09:00
Dean Herbert
87051d5d61 Add better defined steps to TestLoseHostWhileReady ready button test
Not 100% sure this will solve the issue but it's worth a try. The button
state checks are using `Until` everywhere else so this brings the test
in line with the standards.

As seen
https://github.com/ppy/osu/runs/4579641456?check_suite_focus=true.
2021-12-20 17:47:06 +09:00
Dan Balasescu
9316abc278 Better fix for intermittent multiplayer tests 2021-12-20 13:10:13 +09:00
Dean Herbert
9e82a3e79a Merge branch 'master' into forego-resetting-spectate-state 2021-12-15 18:05:06 +09:00
Dan Balasescu
18d7b79207 Don't reset spectating state if gameplay is finished 2021-12-15 17:40:30 +09:00
Dean Herbert
39a0a21132 Add test coverage of same scenario without deletion 2021-12-15 17:30:09 +09:00
Dan Balasescu
d22e1b9001 Add another until step to guard against async test issues 2021-12-15 17:00:06 +09:00
Dan Balasescu
740a6f16c7 Fix exception when updating the room's visual playlist 2021-12-15 16:53:25 +09:00
Dean Herbert
cebfeb5220
Merge pull request #16045 from smoogipoo/multiplayer-local-beatmap-query
Rework multiplayer's current item tracking
2021-12-14 18:33:30 +09:00
Dean Herbert
309290a3c9 Use new method in more places that can benefit from it 2021-12-13 16:56:43 +09:00
Dan Balasescu
bf3abb2455
Merge branch 'master' into multiplayer-local-beatmap-query 2021-12-12 16:37:41 +09:00
Dan Balasescu
9f792fec49 Fix test failures from async item loading 2021-12-12 16:11:48 +09:00
Dan Balasescu
99cd36d2f6 Resolve some test failures due to async population 2021-12-11 22:52:08 +09:00
Dan Balasescu
25b274c323 Fix starting gameplay too early after import 2021-12-11 22:47:50 +09:00
Dan Balasescu
cdb8237a4b
Merge branch 'master' into pre-realm-score-tidy 2021-12-11 19:25:39 +09:00
Dan Balasescu
6057037e35 Move playlist item beatmap population to MatchSubScreen 2021-12-10 20:08:59 +09:00
Dean Herbert
dbb08f7d46 Use OnlineID for set operations 2021-12-10 16:11:48 +09:00
Dean Herbert
50bf2f368d
Merge branch 'master' into host-enqueue-2 2021-12-10 14:09:19 +09:00
Dean Herbert
1952819db2
Merge pull request #16019 from smoogipoo/cleanup-playlist-item-buttons
Cleanup duplicated classes in DrawableRoomPlaylistItem
2021-12-10 12:01:26 +09:00
Dan Balasescu
a445dcd2c6 Fix incorrect test namespace 2021-12-10 02:09:31 +09:00
Dan Balasescu
671582a925 Allow host to enqeue items and items to be edited 2021-12-10 01:15:19 +09:00
Dan Balasescu
048a495115 Add edit button to DrawableRoomPlaylistItem 2021-12-10 01:08:54 +09:00
Dan Balasescu
05aa9635a8 Privatise button again 2021-12-10 00:38:18 +09:00
Dan Balasescu
f9af239ed9 Cleanup duplicated classes in DrawableRoomPlaylistItem 2021-12-09 23:56:49 +09:00
Dean Herbert
dfe19f3509 Minor code reformatting 2021-12-09 17:53:40 +09:00
Dan Balasescu
aec36adf6c Fix test failures 2021-12-09 04:22:34 +09:00
Dan Balasescu
3b4833ca8e A bit of cleanup + xmldocs on classes/members 2021-12-09 01:40:16 +09:00
Dan Balasescu
26f6c5e5a5 Remove ctor params from PlaylistsRoomPlaylist 2021-12-09 01:16:37 +09:00
Dan Balasescu
3be4d8b68d Remove ctor params from DrawableRoomPlaylist/DrawablePlaylistItem 2021-12-09 01:04:56 +09:00
Dan Balasescu
beb5d61a42 Separate playlist item deletion to Playlists-specific class 2021-12-08 20:50:25 +09:00
Bartłomiej Dach
e9694dc74e
Wait for match type changes in team versus test 2021-12-07 20:40:10 +01:00
Dan Balasescu
5ffe702dd6 Add match type and queue mode to multiplayer room panels 2021-12-07 18:57:13 +09:00
Dean Herbert
0fa1a96e9d
Wait for beatmap sets to finish loading to avoid test failures
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-12-06 15:03:17 +09:00
Dean Herbert
a76cfbea21 Add test coverage of incorrect beatmap being used in multiplayer when match started from song select 2021-12-06 14:03:33 +09:00