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

298 Commits

Author SHA1 Message Date
Dean Herbert
7daab2d45b Merge branch 'master' into skin-editor-transform-fix 2022-06-20 14:10:01 +09:00
Dean Herbert
e4d0c7a0fb Move beatmap import step to only be required when entering gameplay 2022-06-20 14:08:05 +09:00
Dean Herbert
329f1a0822 Add test coverage of original fail case and improve test reliability and code quality 2022-06-20 14:08:05 +09:00
Dean Herbert
243806e810 Move common step of toggling skin editor to own method 2022-06-20 13:32:44 +09:00
Gabe Livengood
2b0e82be40
add test coverage 2022-06-19 14:35:05 -04:00
Salman Ahmed
47ce087694 Actually click the gameplay scene button than TriggerClick 2022-06-18 18:32:02 +03:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Salman Ahmed
387c54c252 Ensure notification is displayed after first-run setup is hidden 2022-06-15 18:13:24 +03:00
Salman Ahmed
1171d44ad9 Add failing test case 2022-06-15 03:37:04 +03:00
Dean Herbert
df9174ec00 Remove import popup dialog from song select
This has been replaced in spirit by the first run overlay.
2022-06-07 16:45:27 +09:00
Dean Herbert
f65d2db77f Remove "V2" suffix from ChatOverlay components 2022-05-30 17:54:09 +09:00
Dean Herbert
b2607196b8 Merge branch 'master' into new-chat-integrate 2022-05-26 18:38:26 +09:00
Bartłomiej Dach
4cf8df1628
Fix test inteference from TestOverlayClosing 2022-05-23 23:58:12 +02:00
Bartłomiej Dach
14f14b4311
Add failing test case for back button behaviour in song select 2022-05-23 23:37:05 +02:00
Jai Sharma
606f3b2bd1 Use ChatOverlayV2 in screen navigation tests 2022-05-23 21:02:50 +01:00
Jai Sharma
58d39734d0 Integrate ChatOverlayV2 into main game 2022-05-23 21:02:47 +01:00
Dean Herbert
218642c300 Update unsafe file write usages 2022-05-16 18:05:27 +09:00
Bartłomiej Dach
76c63f1d0a
Rename ModSelect{Screen -> Overlay} in place of removed old design 2022-05-10 22:56:50 +02:00
Dean Herbert
a5b454edc7 Remove unnecessary DI caching of SentryLogger 2022-05-10 16:09:16 +09:00
Joseph Madamba
bc839be4d8 Add failing rapid back button exit test 2022-05-08 14:40:29 -07:00
Bartłomiej Dach
bdea6d8654
Add failing test for mod overlay not closing on entering skin editor 2022-05-07 22:47:19 +02:00
Bartłomiej Dach
a3e61fddcb
Rename skin editor scene library test scene to be more general 2022-05-07 22:43:53 +02:00
Bartłomiej Dach
836de49135
Adjust skin editor scene library test for extensibility 2022-05-07 22:43:47 +02:00
Bartłomiej Dach
a2ab79620a
Update song select exit via click test to match new expectations 2022-05-05 22:16:57 +02:00
Bartłomiej Dach
407db7ff9d
Replace old mod select overlay with new design 2022-05-05 22:16:54 +02:00
Dean Herbert
7ac3ba132c Remove unused using statements 2022-04-25 18:55:12 +09:00
Dean Herbert
a0e80cf901 Merge branch 'master' into scene-library-incompatible-mods 2022-04-25 18:54:40 +09:00
Salman Ahmed
60e76d62c1 Add failing test cases 2022-04-23 23:16:06 +03:00
Salman Ahmed
6ab188f8f9 Split skin editor scene library test to own file
Rather than stuffing more random cases to `TestSceneScreenNavigation`.
2022-04-23 23:15:45 +03:00
Salman Ahmed
daadc3fc21 Simplfiy and share notification dimsiss method across test scenes
Might as well inline, but I feel like it will require adding the same
comment across all usages, because just `State.Value = Hidden` in an
until step feels off, dunno.
2022-04-23 23:14:19 +03:00
Susko3
684d88ba75 Add full OsuGame tests
These tests ensure the expected behaviour is not broken in the future.
2022-04-23 19:01:55 +02:00
Dean Herbert
832d37b2c2 Update screen transition events to use new event args 2022-04-22 00:52:44 +09:00
Dean Herbert
043599081b Split out INotificationOverlay to allow for easier testing 2022-04-18 20:14:01 +09:00
Dean Herbert
72a33c0926 Split out step for dialog overlay load wait 2022-04-18 20:06:08 +09:00
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