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

5806 Commits

Author SHA1 Message Date
Dan Balasescu
269df08fc9 Make ChatLink tests into proper unit test methods 2022-01-11 17:42:02 +09:00
Dan Balasescu
af9fad00c3 Merge branch 'master' into async-deadlock-safety 2022-01-10 16:11:09 +09:00
Dan Balasescu
928023fabb
Merge pull request #16362 from bdach/multiplayer-wrong-ruleset
Fix multiplayer starting gameplay using last picked item ruleset rather than actual current item ruleset
2022-01-10 15:10:27 +09:00
Bartłomiej Dach
82d6639a3b
Decouple rankings table test from online API 2022-01-09 14:42:19 +01: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
Bartłomiej Dach
881fa2b86b
Add basic test scene for scoreboard time 2022-01-07 19:18:16 +01:00
Dean Herbert
3cd996eb4a Merge branch 'master' into async-deadlock-safety 2022-01-07 17:28:59 +09:00
Dean Herbert
00177a3ae1 Update usages to new naming 2022-01-06 22:54:43 +09:00
Bartłomiej Dach
66613cbaa4
Wait for async continuation in score submission test
The previous assert step was optimistically assuming that the async
continuation that writes the value of
`FakeImportingPlayer.ImportedScore` always completes before it, but
that's not necessarily true even if the continuation is instant (it is
still subject to things like task scheduling and TPL thread pool
limits).

To ensure no spurious failures, swap out the assert step for an until
step instead.
2022-01-06 13:09:25 +01:00
Bartłomiej Dach
84765b99b3
Handle score submission request in submission test scene
Was previously not handled at all, therefore displaying request failures
in the test log output. While that was mostly a red herring and
shouldn't have caused any actual *test* failures, it is still better to
handle this explicitly in a realistic manner.
2022-01-06 12:57:26 +01:00
Dean Herbert
5ed69338a6 Add omission of pages when there are too many 2022-01-04 19:05:14 +09:00
Dean Herbert
86f72b71b1 Prepare tests and general structure to support omission of pages 2022-01-04 18:46:44 +09:00
Dean Herbert
5a11ee7810 Use OverlayColourProvider and fix font weight 2022-01-04 18:14:42 +09:00
Dean Herbert
d10b8c79b3 Remove pointless test coverage of DrawablePage 2022-01-04 17:53:24 +09:00
Dean Herbert
ee4f5c0e79 Rename button classes to make more sense 2022-01-04 17:52:40 +09:00
Dean Herbert
1c899e4402 Fix post-merge issues 2022-01-04 16:46:42 +09:00
Dean Herbert
69e7ee0f48
Merge branch 'master' into page-selector 2022-01-04 16:44:22 +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
f6b1405fa0
Merge branch 'master' into fix-listing-terminal-breakage 2022-01-04 11:49:02 +09:00
Bartłomiej Dach
7cdba2f7c3
Add test coverage of score submission if player is exited during import 2022-01-03 22:00:47 +01:00
Bartłomiej Dach
2660f41339
Add failing test case for old cards not expiring correctly 2022-01-03 19:28:14 +01:00
Dean Herbert
04d8fd3a58 Improve reliability of TestStoryboardSkipOutro
Aims to resolve failures as seen at
https://github.com/peppy/osu/runs/4677353822?check_suite_focus=true.

Have run quite a lot locally with no failures (while removing the skip step 100% fails).
2022-01-01 15:32:39 +09:00
Dean Herbert
f53a675ca3 Fix TestSceneMultiSpectatorLeaderboard not waiting for user population 2021-12-31 00:48:31 +09:00
Joseph Madamba
7de43e3aba Fix most open compound words in identifiers being closed 2021-12-27 20:26:28 -08:00
Joseph Madamba
98524d60a4 Fix clear identifier typos 2021-12-27 20:26:28 -08:00
Bartłomiej Dach
ef763e9bd7
Add failing test for storyboard not tracking current track 2021-12-27 12:28:49 +01:00
Bartłomiej Dach
34b0101ff4
Add visual test coverage of "hidden by ruleset" combo option 2021-12-26 16:49:18 +01:00
Dean Herbert
8ad53138a6
Merge pull request #16234 from smoogipoo/fix-initial-button-colour
Fix OsuAnimatedButton animating when initially disabled
2021-12-25 15:34:40 +09:00
Dean Herbert
2ee3e61983
Merge branch 'master' into beatmap-card/extra-on-listing 2021-12-24 19:02:51 +09:00
Dan Balasescu
c973739b08 Fix OsuButton event binding + inital-enablement colour 2021-12-24 11:56:12 +09:00
Dan Balasescu
03d159d723 Refactor OsuAnimatedButton test scene 2021-12-24 11:56:12 +09:00
Bartłomiej Dach
5cbaa028eb
Use extracted ruleset config cache implementation in DI 2021-12-23 19:02:10 +01:00
Bartłomiej Dach
27c5cc5bd8
Add testing for beatmap card size switching 2021-12-23 15:55:51 +01:00
Bartłomiej Dach
1876617d8e
Implement beatmap card size tab control 2021-12-23 15:55:36 +01:00
Dean Herbert
d31c9db08b Adjust testing methodology to improve reliability of mosue wheel volume adjust tests
There was previously a potential in headless runs for timing
discrepancies to cause the volume to never get adjusted.

As seen at https://github.com/peppy/osu/runs/4604610951?check_suite_focus=true.
2021-12-23 13:25:24 +09:00
Dan Balasescu
e1b539fa9e
Merge pull request #16213 from peppy/working-beatmap-live
Tidy up `WorkingBeatmap`
2021-12-23 13:02:37 +09:00
Bartłomiej Dach
02fa1c21b7
Adjust existing placeholder test to demonstrate failure case 2021-12-22 15:03:20 +01:00
Dean Herbert
f3f491374b Remove unused load checks 2021-12-22 18:17:00 +09:00
Dean Herbert
967419c9ac Remove BeatmapSetInfo and Metadata from interface
There were very few accesses to this, and after realm they should all be
done via the `BeatmapInfo`, so let's remove this.
2021-12-22 18:17:00 +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
Dean Herbert
a88800c99a
Merge pull request #16198 from smoogipoo/fix-current-item-before-population
Fix delete button showing on current item before beatmap retrieval
2021-12-22 13:15:07 +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
Dean Herbert
0bda7892f7
Merge pull request #16197 from bdach/beatmap-card/renames
Rename beatmap card-related classes
2021-12-21 18:51:34 +09:00
Dan Balasescu
e2f8c71081 Fix test 2021-12-21 18:38:31 +09:00
Dan Balasescu
a53c67b2ea
Merge pull request #16194 from peppy/fix-results-screen-wait-test
Fix intermittent test failures on `TestSceneResultsScreen` due to long delay step
2021-12-21 16:56:49 +09:00
Bartłomiej Dach
88d4e95ad8
Rename BeatmapCard{ => Normal} 2021-12-21 08:26:21 +01:00
Dean Herbert
2707b2fbda
Merge pull request #16012 from bdach/beatmap-card/extra
Implement "extra" beatmap card size
2021-12-21 15:40:33 +09:00
Dean Herbert
c0a8758839 Fix intermittent test failures on TestSceneResultsScreen due to long delay step
Using real time delays of 3 seconds doesn't play well with headless runs.
2021-12-21 15:15:05 +09:00
Dan Balasescu
a8cd96278d
Merge pull request #16189 from peppy/fix-beatmap-listing-overlay-test-failure
Fix intermittent failures on `TestSceneBeatmapListingOverlay`
2021-12-21 15:11:25 +09:00
Dean Herbert
0f8a6a3f64 Fix intermittent failures on TestSceneBeatmapListingOverlay
In the specific method, there was no wait step after the initial fetch
(unlike all of the rest), meaning the fetch may not have finished in
time for the follow-up steps.

As seen at
https://github.com/ppy/osu/runs/4588058438?check_suite_focus=true.
2021-12-21 14:12:06 +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
f1a03aced5
Merge branch 'master' into beatmap-card/extra 2021-12-20 15:49:00 +01:00
Bartłomiej Dach
0b7daf542f
Merge branch 'master' into fix-song-select-test-failure 2021-12-20 11:36:49 +01:00
Bartłomiej Dach
f492cf84d9
Ensure presence of at least 1 difficulty for each ruleset 2021-12-20 11:34:39 +01: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
6907a9a3cc Name some screen stacks for better logging context 2021-12-20 18:24:14 +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
Dean Herbert
5c8e317a6e Chooser earlier items in song select tests to avoid potentially not having enough 2021-12-20 17:11:15 +09:00
Dean Herbert
af78a3e99d Fix weird loop logic 2021-12-20 17:09:08 +09:00
Dean Herbert
d79602a912 Add wait step to TestScenePlaylistResultScreen explicitly for screen load 2021-12-20 16:58:36 +09:00
Dean Herbert
2e47c4e25d
Merge pull request #16164 from smoogipoo/fix-intermittent-background-test
Fix intermittent background screen test failures
2021-12-20 14:00:53 +09:00
Dan Balasescu
9316abc278 Better fix for intermittent multiplayer tests 2021-12-20 13:10:13 +09:00
Dan Balasescu
11f3ec0cb5 Wait for previous screen to be hidden in test 2021-12-20 12:44:23 +09:00
Bartłomiej Dach
097402677d
Add test for ranked/unranked user display 2021-12-19 13:40:22 +01:00
Bartłomiej Dach
c112177559
Bring profile header test in line with modern conventions
- Removed online code that didn't work anyway after the introduction of
  the development web instance.

- Removed some weird test steps.

- Fixed online/offline test steps not working at all due to identical
  user ID.
2021-12-19 13:40:21 +01:00
Bartłomiej Dach
883fcf2604
Fix tests 2021-12-17 11:45:01 +01:00
Bartłomiej Dach
c6d0b5d200
Merge branch 'master' into beatmap-card/extra-wip 2021-12-17 11:11:36 +01:00
Bartłomiej Dach
54790bb758
Merge branch 'master' into fix-realm-post-storage-migration-failure 2021-12-17 00:19:46 +01:00
Dan Balasescu
488374b4a2 Don't show multiplayer channels in chat overlay 2021-12-16 16:41:47 +09:00
Bartłomiej Dach
cbb65e1e07
Merge branch 'master' into beatmap-card-expanded-state-fix 2021-12-15 22:20:30 +01: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
e9187cc3cf Add failing test showing expanded state being unexpectedly lost 2021-12-15 16:26:19 +09:00
Dan Balasescu
2cea39a92a
Merge pull request #16083 from peppy/fix-online-availability-after-reimport
Fix `OnlinePlayBeatmapAvailabilityTracker` failng after modified reimport of existing beatmap
2021-12-15 08:31:02 +09:00
Dan Balasescu
da00c020be Remove whitespace 2021-12-15 07:33:49 +09:00
Bartłomiej Dach
00154fe86d
Merge branch 'master' into fix-menu-background-desync 2021-12-14 21:31:10 +01:00
Dean Herbert
0950d8d327 Add back PlaylistRoomCreation test
Was spiritually removed in https://github.com/ppy/osu/pull/16045.

This implementation is mostly taken from that PR's comment thread
verbatim, and now works due to the associated changes to
`OnlinePlayBeatmapAvailabilityTracker`.
2021-12-14 19:16:52 +09:00
Dean Herbert
04551ea61e
Merge pull request #16080 from smoogipoo/fix-storyboard-start-time
Fix incorrect storyboard life time start with looping commands
2021-12-14 18:33:56 +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
25a056dfad Remove pointless/broken test steps
These aren't accurate and are tested via a more accurate means directly
above.
2021-12-14 16:40:50 +09:00
Dean Herbert
b6a272e31a Add failing test coverage of BackgroundScreeNDefault's beatmap background tracking when active/non-active 2021-12-14 16:40:34 +09:00
Dan Balasescu
eb3050b2ac Fix incorrect test 2021-12-14 15:08:00 +09:00
Dean Herbert
441b7baa93 Provide a realm factory to usages of ToLive/RealmLive 2021-12-14 14:26:34 +09:00
Dan Balasescu
6e3558b222 Remove weird test 2021-12-14 06:38:57 +09:00
Dean Herbert
309290a3c9 Use new method in more places that can benefit from it 2021-12-13 16:56:43 +09:00
Dean Herbert
654b47c7ec Move "excess mods" test behaviour to local usages
There were only two of these, so it doesn't make sense to add extra
complexity in the test resources class.
2021-12-13 16:41:30 +09:00
Dean Herbert
99ac71c1fe Simplify usages where the ruleset being used is osu! ruleset 2021-12-13 16:37:20 +09:00
Dean Herbert
b0d14526ea Move test ScoreInfo creation to TestResources
The main goal here is to remove the inheritance, since realm doesn't
like that. Unfortunate that we can't use object initialisers in a few of
these places, but no real way around that.
2021-12-13 16:34:50 +09:00
Dean Herbert
3ea07b426b
Merge branch 'master' into multiplayer-local-beatmap-query 2021-12-13 13:27:34 +09:00
Dan Balasescu
2cd2b10ce1 Fix results sometimes showing incorrect score position 2021-12-13 06:54:57 +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
1aac978a7b
Merge pull request #16029 from peppy/editor-mod-reset
Fix editor not resetting mods when entering
2021-12-11 20:20:11 +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
5e9510be36 Add test coverage of editor resetting mods on entering 2021-12-10 18:57:33 +09:00
Dean Herbert
bff02bedbf Rename APIScoreInfo to APIScore 2021-12-10 16:11:49 +09:00
Dean Herbert
dbb08f7d46 Use OnlineID for set operations 2021-12-10 16:11:48 +09:00
Dean Herbert
bf1418bafc Use OnlineID instead of legacy IDs for equality and lookups 2021-12-10 16:11:48 +09:00
Dean Herbert
261847bbec Avoid touching ScoreInfo.User directly 2021-12-10 15:39:29 +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
35a208a478
Merge pull request #15999 from peppy/restore-user-volume-muted-notification
Fix the unmute notification potentially overwriting user's volume levels unnecessarily
2021-12-10 02:58:59 +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
538a822760
Merge branch 'master' into multiplayer-playlist-deletion 2021-12-09 19:04:06 +09:00
Dean Herbert
b393f83028
Merge pull request #16009 from smoogipoo/cleanup-drawable-playlist
Cleanup DrawableRoomPlaylist and DrawableRoomPlaylistItem
2021-12-09 18:54:16 +09:00
Dean Herbert
dfe19f3509 Minor code reformatting 2021-12-09 17:53:40 +09:00
Dan Balasescu
1a0945daba Siplify condition, allow host to always remove items 2021-12-09 14:33:50 +09:00
Dan Balasescu
25620d1eef Merge branch 'cleanup-drawable-playlist' into multiplayer-playlist-deletion 2021-12-09 14:01:04 +09:00
Bartłomiej Dach
3ecfaa532c
Add source field to extra beatmap card 2021-12-08 22:56:28 +01:00
Bartłomiej Dach
a32492cdd5
Duplicate BeatmapCard{-> Extra} as blueprint for extra card size 2021-12-08 22:53:51 +01:00
Dan Balasescu
aec36adf6c Fix test failures 2021-12-09 04:22:34 +09:00
Dan Balasescu
c34c580ad4 Add client-side + interface implementation 2021-12-09 03:08:59 +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
Dean Herbert
8d9c37a825 Merge branch 'master' into primary-key-consistency 2021-12-08 21:34:38 +09:00
Dan Balasescu
beb5d61a42 Separate playlist item deletion to Playlists-specific class 2021-12-08 20:50:25 +09:00
Dean Herbert
a969fe3ef8 Add test coverage showing intended UX of user's volume levels being retained when unmuting 2021-12-08 13:37:47 +09:00
Dean Herbert
724d72b975
Merge pull request #15988 from bdach/fix-team-versus-test-failure
Fix test failures in team versus test
2021-12-08 11:54:00 +09:00
Bartłomiej Dach
7720a1b69b
Fix test to wait for drawable ruleset load before attempting paste 2021-12-07 21:10:45 +01:00
Bartłomiej Dach
e9694dc74e
Wait for match type changes in team versus test 2021-12-07 20:40:10 +01:00
Dean Herbert
d6e68feadc
Merge pull request #15948 from bdach/beatmap-card/difficulty-dropdown
Add difficulty dropdown to beatmap card
2021-12-07 23:40:06 +09:00
Dan Balasescu
5ffe702dd6 Add match type and queue mode to multiplayer room panels 2021-12-07 18:57:13 +09:00
Dean Herbert
9033169177
Merge pull request #15951 from peppy/fix-failing-recorder-tests-w
Fix intermittent test failures in scenes using `SpectatorClient`
2021-12-06 18:40:27 +09:00
Dan Balasescu
568364b604 Fix indentation 2021-12-06 17:38:57 +09:00
Dean Herbert
cf34b3f70e
Merge pull request #15859 from peppy/realm-integration/skins-rebase
Use realm for skins
2021-12-06 17:12:23 +09:00
Dean Herbert
0d3d22d3e1 Update TestSceneReplayReocorder to be safer about disposal 2021-12-06 17:09:12 +09:00
Dean Herbert
50a5f52f92 Remove duplicated test scene (see TestSceeneReplayRecorder) 2021-12-06 17:09:11 +09:00
Dean Herbert
d58b85b381 Refactor TestScenSpectatorPlayback to properly clean up without async disposal 2021-12-06 17:09:11 +09:00
Dean Herbert
452fa93444 Merge branch 'master' into realm-integration/skins-rebase 2021-12-06 15:21:02 +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