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

264 Commits

Author SHA1 Message Date
Dean Herbert
e315313266 Split out IDialogOverlay to allow for easier testing 2022-04-18 18:36:26 +09:00
Dean Herbert
58d5cf4560 Remove unused using statement 2022-04-14 16:37:59 +09:00
Dean Herbert
f48a9ba90a Add test coverage of nested screen stacks not handling dialog dismissal properly 2022-04-14 16:19:34 +09:00
Salman Ahmed
7495a04990 Ignore EF-to-realm migration tests on ARM architectures 2022-03-30 01:24:37 +03:00
Dan Balasescu
1ffa1e1219
Merge pull request #17400 from nagilson/screen-mod-retention
Fix mods from single player carrying over to multiplayer
2022-03-23 08:36:15 +09:00
Bartłomiej Dach
c8d48f89e8
Remove unnecessary local 2022-03-22 19:13:22 +01:00
Bartłomiej Dach
94c5207f36
Fix test not actually testing desired scenario anymore
The test was checking the test scene's own `SelectedMods` bindable
rather than the multiplayer screen's, and the former was never actually
being mutated by anything. Therefore the case would pass even on
`master` with the fix reverted.
2022-03-22 19:04:32 +01:00
Dean Herbert
804e856160 Move and refactor test in line with functionality changes 2022-03-22 17:38:43 +09:00
Dean Herbert
3643f879e4 Add test coverage of skin editor settings slider not working via keyboard adjustments 2022-03-21 17:33:56 +09:00
Dean Herbert
d5eca16b69 Fix potential test failures due to slow realm refresh in TestSceneScreenNavigation
As seen at https://github.com/ppy/osu/runs/5492345983?check_suite_focus=true.
2022-03-10 18:10:08 +09:00
Dean Herbert
5efffa208a Add test coverage of beatmap set overlay actually showing requested beatmap 2022-02-22 17:08:09 +09:00
Dean Herbert
29c5683ba3 Add handling of beatmap links on startup 2022-02-18 16:14:37 +09:00
Dean Herbert
b1cf014dc2 Add test coverage of EF to Realm migration process 2022-02-15 17:00:17 +09:00
Dan Balasescu
483977d5c8 Merge branch 'master' into spectator-state-rework 2022-02-03 19:59:07 +09:00
Dean Herbert
6355ac6663 Wait for DialogOverlay load in more tests
Apparently the previous fix was not enough as this can still be seen
failing
(https://github.com/ppy/osu/runs/5046718623?check_suite_focus=true).

This change is copying from what other tests use seemingly reliably,
such as `TestScenePerformFromScreen`)
2022-02-03 15:10:08 +09:00
Dan Balasescu
781cb9f18d Move HasPassed/HasFailed into GameplayState 2022-02-01 14:46:24 +09:00
Dean Herbert
9001c3a396 Fix test failures if DialogOverlay is not loaded in time
As seen at https://github.com/ppy/osu/runs/4999391205?check_suite_focus=true, where `DialogOverlay` hasn't loaded in single file yet.
2022-01-31 15:17:07 +09:00
Dean Herbert
4c97ed676f Fix score presentation tests not correctly entering song select before running 2022-01-29 14:46:24 +09:00
Dean Herbert
2453bf5ed0 Add test coverage of the same thing but via "clear all scores" button 2022-01-28 15:54:53 +09:00
Dean Herbert
778eebc94d Add test coverage of local score import and deletion 2022-01-28 15:50:36 +09:00
Dean Herbert
5085eb6801 Ensure gameplay starts by dismissing any notifications in TestSceneChangeAndUseGameplayBindings 2022-01-26 03:39:01 +09:00
Dean Herbert
90a7dd7711 In gameplay bindings test, ensure a selection is made before attempting to enter gameplay 2022-01-25 17:55:33 +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
f30894840c Update terminology to realm "instance" rather than "context"
This matches the terminology used by realm themselves, which feels
better.
2022-01-24 20:38:38 +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
02baad30d7 Merge branch 'master' into global-bindable-thread-safety 2022-01-18 18:12:00 +09:00
Dean Herbert
8978b88f69 Add test coverage of startup ruleset being non-default 2022-01-18 16:22:15 +09:00
Dean Herbert
1b62a685f3 Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-18 15:07:59 +09:00
Dan Balasescu
f6b9d36acf
Remove unused using 2022-01-17 17:06:04 +09:00
Dean Herbert
12fd279b7d Add test to check full flow of rebinding gameplay key bindings
Addresses a regression found in realm PR that was not covered by tests.
2022-01-17 16:00:17 +09:00
Dean Herbert
4f8d29c1c0 Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-13 18:25:09 +09:00
Dan Balasescu
672c1d36dc Fix intermitten screen navigation tests 2022-01-13 05:52:04 +09:00
Dean Herbert
e0c59f4b3c Localise EF context factory usage to migration only 2022-01-12 17:49:11 +09:00
Dean Herbert
4b690703b3 Remove unnecessary DI dependencies from cache test 2022-01-12 17:49:10 +09:00
Dean Herbert
fa7dddcf3c Fix TestScenePresentScore sharing metadata/difficulty across multiple beatmaps 2022-01-12 17:00:17 +09:00
Dean Herbert
e74a5022c9 Fix multiple tests via null checks and changing ToLive to Detach
flow
2022-01-12 17:00:17 +09:00
Dean Herbert
31a3161189 Make tests compile again 2022-01-12 17:00:16 +09:00
Dean Herbert
116f35c52a Remove EF FileStore 2022-01-12 16:39:36 +09:00
Dean Herbert
6a671b0a52 Remove unnecessary assigns of BeatmapSetInfo.Metadata 2022-01-12 16:39:36 +09: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
Joseph Madamba
7de43e3aba Fix most open compound words in identifiers being closed 2021-12-27 20:26:28 -08:00
Bartłomiej Dach
5cbaa028eb
Use extracted ruleset config cache implementation in DI 2021-12-23 19:02:10 +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
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
ec0a6735eb Rename TestMultiplayerScreenStack to TestMultiplayerComponents 2021-12-20 18:24:59 +09:00
Dean Herbert
dbb08f7d46 Use OnlineID for set operations 2021-12-10 16:11:48 +09:00
Dean Herbert
452fa93444 Merge branch 'master' into realm-integration/skins-rebase 2021-12-06 15:21:02 +09:00
Dan Balasescu
4145a16d5b
Merge pull request #15920 from peppy/clean-up-unused-resolves
Clean up unused resolved properties
2021-12-03 20:08:48 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
2927b235de Add test coverage of mouse wheel scroll adjusting volume 2021-12-03 17:18:07 +09:00
Dean Herbert
ec700e9142 Remove unused using statement 2021-12-02 14:01:57 +09:00
Dean Herbert
e855a49833 Add test coverage of default skin edit and export 2021-12-02 14:01:18 +09:00
Dan Balasescu
09dd054283 Fix SongSelect-related test failures 2021-11-25 21:11:13 +09:00
Dan Balasescu
74b6c33fab
Merge pull request #15778 from peppy/ruleset-info-id-usage
Update usages of `RulesetInfo.ID` to use `OnlineID` instead
2021-11-24 16:55:28 +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
f283770f34 Update mock RulesetInfo usage to set OnlineID instead of ID 2021-11-24 15:50:26 +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
729f681938 Update cases where equality can be used instead of primary key equality 2021-11-24 12:49:57 +09:00
Dean Herbert
7c2e79f911 Update all simple cases of switching to IWorkingBeatmap 2021-11-17 20:56:57 +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
smoogipoo
0e293471c2 Clean up multiplayer-screen tests by removing intermediate screen 2021-10-28 14:29:49 +09:00
Bartłomiej Dach
798349243f
Cache test request handler in screen navigation test 2021-10-27 20:38:52 +02:00
smoogipoo
f3dba49aae Rename room managers 2021-10-27 19:36:32 +09:00
Dean Herbert
c9d8645341 Fix startup import test waiting on potentially incorrect notification type 2021-10-15 13:26:31 +09:00
Dean Herbert
f69a56a26a Add test coverage of startup import sequence 2021-10-13 12:19:10 +09:00
Dan Balasescu
7074021d1f
Merge branch 'master' into test-scene-osu-game-fix-async-disposal-contention 2021-10-07 17:47:11 +09:00
smoogipoo
e586fee091 Remove unused usings 2021-10-07 17:46:30 +09:00
Dean Herbert
7e0379441c Change TestSceneOsuGame to use OsuGameTestScene to avoid async disposal deadlock
The original implementation was done so in a way that the nested `OsuGame` would be disposed via the async queue, causing a deadlock for 10-20s during test runs. `OsuGameTestScene` was already fixed to avoid this, so consuming it here seems like the easy fix.
2021-10-07 16:18:48 +09:00
Dean Herbert
0bd5136a29 Fix TestOverlayClosing occasionally failing due to running too fast 2021-10-07 15:55:29 +09:00
Dean Herbert
57c5be39d3 Merge branch 'master' into remove-local-realm-thread-switch-handling 2021-10-04 20:52:44 +09:00
Dan Balasescu
4bd1083388
Merge pull request #14903 from peppy/importer-returns-live
Add `ILive<T>` and use as return type of `Import` methods
2021-10-04 20:16:32 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dean Herbert
ca7346e01f Add test coverage 2021-10-01 00:34:09 +09:00
Dean Herbert
a2e61883e3 Initial push to use ILive in import process 2021-09-30 22:55:25 +09:00
Dean Herbert
b399f910e4 Merge branch 'fix-osu-game-test-scene' into update-framework 2021-09-16 22:46:52 +09:00
Dean Herbert
ac377a2e3c Remove unused SettingsStore 2021-09-15 16:31:13 +09:00
Dean Herbert
67750e6e1a Fix subsequent navigation tests failing due to escape key not being released 2021-09-14 15:08:43 +09:00
Dean Herbert
e8d4e2e6da Fix tests being blocked by notification overlay popup 2021-09-13 19:38:53 +09:00
Dean Herbert
24ae530a80 Add test coverage of double dispose of OsuGame 2021-09-13 19:04:13 +09:00
Dean Herbert
aa71e3f3d4 Update nested game tests in line with framework changes 2021-09-13 19:04:13 +09:00
Dean Herbert
5a06954665 Add test coverage of game exit scenario 2021-09-10 18:23:00 +09:00
Joseph Madamba
570d36fde7 Make toolbar handle mouse events instead 2021-08-30 20:53:43 -07:00
Joseph Madamba
7bb2269eba Add overlay closing behavior test 2021-08-29 22:27:56 -07:00
Dean Herbert
e13b516f31 Fix excess blank lines 2021-08-20 22:26:38 +09:00
Dean Herbert
b9ff94485d Revert usage of OsuGameTestScene for TestSceneOsuGame
Turns out we likely don't want this, as it means the testing user (using
a visual test browser) will not have access to their beatmaps. Can
revisit at a future date if the temporary files are still an issue.
2021-08-20 19:45:54 +09:00
Dean Herbert
4725b802b0 Share OsuGameTestScene with implementations across template projects 2021-08-18 16:53:32 +09:00
Dean Herbert
2758a83d55 Fix TestSettingsMigration's usage of RecycleLocalStorage 2021-08-18 16:39:10 +09:00
Dean Herbert
c1d67976e6 Rename const, add xmldoc and make protected 2021-08-13 16:29:36 +09:00
Dean Herbert
bb36d1614f
Merge branch 'master' into improve-screen-offsetting 2021-08-13 16:23:02 +09:00
smoogipoo
0f5bea235c Merge branch 'master' into lounge-redesign 2021-08-11 18:15:34 +09:00
Dean Herbert
0ffe740ca1 Bring back TestSceneOsuGame
I marked this as headless to avoid it being "ungrouped", but it turns
out this is quite useful to have around and I have searched for it on
multiple occasions.
2021-08-11 16:24:49 +09:00
Salman Ahmed
8dc0650ca7 Add test coverage 2021-08-06 22:56:43 +03:00
smoogipoo
8b3feaabfc Fix more compile errors 2021-08-03 20:07:42 +09:00
smoogipoo
1b6b7ce343 Merge branch 'master' into lounge-redesign 2021-08-03 20:02:31 +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
dfe7cc40a9 Move create room button into the lounge 2021-07-14 18:55:01 +09:00
Dean Herbert
9786e1a932 Ensure run-from-screen song select reaches correct point in execution
Fixes issues as seen at
https://github.com/ppy/osu/runs/3023581865?check_suite_focus=true. Song
select may take a few frames to perform initial selection as there is a
bit of internal async logic. This ensures that the beatmap has been
updated before continuing with test execution.
2021-07-09 12:36:56 +09:00
Dean Herbert
719852435f Fix intermittent PerformFromScreen test failures due to incorrect screen sequence
These tests were manually pushing the `PlayerLoader` / `Player`
instances to `SongSelect`, which bypasses safeties in place which avoid
the exact issue that came up in https://github.com/ppy/osu/runs/2951759236
(see `AllowSelection` flag specifically).
2021-07-01 15:10:29 +09:00
smoogipoo
ab9290772b Fix a similar case with online play sub-screens 2021-06-08 17:54:54 +09:00
smoogipoo
490ab9e96a Fix typo 2021-06-08 17:09:03 +09:00
smoogipoo
7fa0ac6ed7 Fix possible nullref when exiting song select too fast 2021-06-08 17:03:50 +09:00
Dean Herbert
66dd7b7705 Update test logic to allow gameplay to properly continue 2021-06-03 14:38:50 +09:00
Dean Herbert
7a71cc1e82 Fix actually incorrect navigation test (can no longer retry from autoplay results) 2021-06-01 16:54:29 +09:00
Lucas A
ed4c025c7e Fix other tests and move TestPlaySongSelect class declaration. 2021-05-17 12:55:59 +02:00
Lucas A
fe11426238 Disable appearance of the stable import prompt waiting for user interaction in tests, which caused them to fail. 2021-05-17 12:55:59 +02:00
Dean Herbert
545156d15c Add regression test coverage 2021-04-08 15:20:53 +09:00
Dean Herbert
53c1bc666c Make addition of nested GlobalActionContainer in OsuGameTestScene optional 2021-04-06 15:18:00 +09:00
Dean Herbert
e486e521ff Fix regressed test 2021-04-05 22:46:01 +09:00
Dean Herbert
0c53b4eb93 Fix wrong counting and add test 2021-03-31 14:09:39 +09:00
Dean Herbert
6cb14e91c9 Make Player abstract and introduce SoloPlayer 2021-03-23 18:18:49 +09:00
smoogipoo
f7ec79c5f4 Fix incorrect generic type 2021-03-17 19:02:25 +09:00
Dean Herbert
4bf57ad860 Remove remaining reference to obsolete value 2021-03-17 18:24:24 +09:00
smoogipoo
7fa5fd5647 Update usages of config with framework changes 2021-03-17 16:10:16 +09:00
Joehu
d0644221ff Add test showing toolbar behavior change 2021-03-12 15:48:49 -08:00
Dean Herbert
a08a3d44c7 Add failing test coverage for using hotkeys from main menu before toolbar displayed 2021-02-25 14:52:16 +09:00
Dean Herbert
996c0897d1 Seek via GameplayClockContainer for better reliability 2021-02-23 13:40:21 +09:00
Dean Herbert
541237ef16 Use a shorter test beatmap for tests which need to run to completion 2021-02-22 14:48:04 +09:00
Dean Herbert
ec37e1602d Add failing test coverage of retrying from the results screen 2021-02-15 15:03:09 +09:00
Bartłomiej Dach
83fb7c7a1a Re-namespace all files in OnlinePlay directory 2020-12-25 16:50:09 +01:00
Dean Herbert
836d1491d0 PlaylistsMultiplayer -> Playlists 2020-12-25 23:47:18 +09:00
Dean Herbert
a1384942b1 Timeshift -> Playlists at a code level 2020-12-25 13:11:21 +09:00
Dean Herbert
d229fbba6e
Merge branch 'master' into present-recommended 2020-12-22 13:52:29 +09:00
smoogipoo
4494bb1eb5 Abstract RoomManager and Multiplayer 2020-12-19 00:52:27 +09:00
Endrik Tombak
944f3480c2 Merge branch 'master' of https://github.com/ppy/osu into present-recommended
 Conflicts:
	osu.Game/OsuGameBase.cs
	osu.Game/Screens/Select/DifficultyRecommender.cs
	osu.Game/Screens/Select/SongSelect.cs
2020-11-21 14:01:01 +02:00
Dean Herbert
0985cb3327 Fix perform from menu not hiding overlays if already on target screen 2020-11-13 14:08:08 +09:00
Dean Herbert
b28a0d5cd5 Add test coverage 2020-11-11 16:05:44 +09:00
Joehu
ef3c918a3c Simplify input buttons/keys in tests 2020-11-09 14:18:20 -08:00
Dean Herbert
d2f6303988 Change default value of requestedByUser to false 2020-11-02 14:56:50 +09:00
Dean Herbert
e43e12cb2d Pause playback in present tests to avoid track inadvertently changing at menu 2020-09-15 20:17:59 +09:00
Dean Herbert
f7c9c80566 Force OsuGameTests to use a unique storage each run 2020-09-15 19:01:32 +09:00
Dan Balasescu
980511df9b
Merge pull request #10156 from Joehuu/add-collections-to-beatmap-options
Add manage collections button to beatmap options
2020-09-15 15:55:30 +09:00
Dean Herbert
9e73237a90 Fix score present tests potentially succeeding a step when they shouldn't 2020-09-15 15:21:03 +09:00
Joehu
a09bd787f0 Add failing beatmap options input test 2020-09-14 11:21:39 -07:00
Joehu
e328b791df Add failing mod select input test 2020-09-13 11:49:16 -07:00
smoogipoo
1143d5d992 Update class exclusion for dynamic compilation 2020-09-04 20:41:08 +09:00
smoogipoo
6aafb3d271 Cleanup TestSceneScreenNavigation 2020-08-11 13:14:20 +09:00
smoogipoo
d1765c8a45 Fix using the wrong music controller instance 2020-08-07 22:06:04 +09:00
smoogipoo
5002d69f69 Update inspections 2020-08-07 20:51:56 +09:00
smoogipoo
61b632516e Ensure CurrentTrack is never null 2020-08-07 19:43:16 +09:00
smoogipoo
5c05fe3988 Expose track from MusicController 2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
Dean Herbert
cb56b8e031 Add test for menu playing music on return 2020-07-10 18:13:58 +09:00
Dean Herbert
17a70bf6ee Add test coverage 2020-06-15 20:32:27 +09:00
Bartłomiej Dach
2913a81835 Improve test code quality & safety 2020-05-01 16:59:45 +02:00