1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-15 15:17:44 +08:00
Commit Graph

305 Commits

Author SHA1 Message Date
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Dean Herbert
a76037b643 Add test coverage of confirm-for-operations 2023-06-23 15:30:21 +09:00
Dean Herbert
66b8b5192b Add test coverage of editor timestamp remembering 2023-06-06 15:25:19 +09:00
Bartłomiej Dach
5c1abdc704
Fix screen navigation test hijacking dummy request handler
In an upcoming change, I stumbled upon a test failure mode wherein tests
in `TestSceneScreenNavigation` would die on the following exception:

	2023-05-07 17:58:42 [error]: System.ObjectDisposedException: Cannot access a closed Realm.
	2023-05-07 17:58:42 [error]: Object name: 'Realms.Realm'.
	2023-05-07 17:58:42 [error]: at Realms.Realm.ThrowIfDisposed()
	2023-05-07 17:58:42 [error]: at Realms.Realm.All[T]()
	2023-05-07 17:58:42 [error]: at osu.Game.Beatmaps.BeatmapManager.<>c__DisplayClass25_0.<QueryBeatmap>b__0(Realm r) in D:\a\osu\osu\osu.Game\Beatmaps\BeatmapManager.cs:line 282
	2023-05-07 17:58:42 [error]: at osu.Game.Database.RealmAccess.Run[T](Func`2 action) in D:\a\osu\osu\osu.Game\Database\RealmAccess.cs:line 387
	2023-05-07 17:58:42 [error]: at osu.Game.Beatmaps.BeatmapManager.QueryBeatmap(Expression`1 query) in D:\a\osu\osu\osu.Game\Beatmaps\BeatmapManager.cs:line 282
	2023-05-07 17:58:42 [error]: at osu.Game.Tests.Visual.OnlinePlay.TestRoomRequestsHandler.<HandleRequest>g__createResponseBeatmaps|6_0(Int32[] beatmapIds, <>c__DisplayClass6_0& ) in D:\a\osu\osu\osu.Game\Tests\Visual\OnlinePlay\TestRoomRequestsHandler.cs:line 174
	2023-05-07 17:58:42 [error]: at osu.Game.Tests.Visual.OnlinePlay.TestRoomRequestsHandler.HandleRequest(APIRequest request, APIUser localUser, BeatmapManager beatmapManager) in D:\a\osu\osu\osu.Game\Tests\Visual\OnlinePlay\TestRoomRequestsHandler.cs:line 140
	2023-05-07 17:58:42 [error]: at osu.Game.Tests.Visual.TestMultiplayerComponents.<>c__DisplayClass18_0.<load>b__0(APIRequest request) in D:\a\osu\osu\osu.Game.Tests\Visual\TestMultiplayerComponents.cs:line 80
	2023-05-07 17:58:42 [error]: at osu.Game.Online.API.DummyAPIAccess.<>c__DisplayClass32_0.<Queue>b__0() in D:\a\osu\osu\osu.Game\Online\API\DummyAPIAccess.cs:line 74

Upon closer inspection, one of the tests in the scene instantiates a
`TestMultiplayerComponents` instance. `TestMultiplayerComponents`
registers a custom request handler onto `DummyAPIAccess`. Normally, this
is not an issue; however, because `TestSceneScreenNavigation` is an
`OsuGameTestScene`, and therefore has its storage recycled after every
test, this leads to the error above in the following scenario:

1. `TestPushMatchSubScreenAndPressBackButtonImmediately()` passes.
2. The test is cleaned up, and the test case's storage is recycled,
   including the test case's realm database.
3. In a subsequent test, a web request handled by the dummy API request
   handler is fired. The dummy API request handler subsequently attempts
   to access a realm that does not exist anymore.

As the usage of `TestMultiplayerComponents` is highly unorthodox in this
particular case, I'm opting for a localised fix which ensures that the
request handler is cleaned up appropriately.
2023-06-05 23:15:16 +02:00
Bartłomiej Dach
07b5874eee
Fix test step name 2023-05-24 20:18:36 +02:00
Dean Herbert
6044327181 Add test coverage for escape deselecting any active selection 2023-05-24 23:59:22 +09:00
Dean Herbert
663cec1ff6 Combine editor navigation test scenes 2023-05-24 23:51:28 +09:00
Bartłomiej Dach
8514b2758a
Fix rapid back button test failure 2023-05-07 21:07:38 +02:00
Dean Herbert
2643100644 Add xmldoc to new test mentioning failure rate and general purpose 2023-04-29 11:05:10 +09:00
Dean Herbert
32f8c674f4 Extract beatmap retrieval method for more legibility 2023-04-29 11:01:29 +09:00
Dean Herbert
a6f0186112 Improve legibility and code quality of new test 2023-04-29 10:51:56 +09:00
Dean Herbert
428b5fad3c Rename test scene to explicitly mention navigation testing 2023-04-29 10:51:56 +09:00
Cootz
d9b3c97179 Fix testing 2023-04-29 10:29:33 +09:00
Cootz
c5357d30ab Add test 2023-04-29 10:29:33 +09:00
Dean Herbert
28520414aa Move KeyCounter components to HUD namespace 2023-03-07 16:41:39 +09:00
Dean Herbert
8f6df5ea0f
Merge branch 'master' into gameplay/key-counter-abstraction 2023-03-07 16:09:45 +09:00
Bartłomiej Dach
9d4bb2ecf7
Add failing test coverage for clearing sidebar contents 2023-03-04 14:08:50 +01:00
Bartłomiej Dach
2f25fb4083
Move NonSkinnableScreenPlaceholder to outer scope 2023-03-04 13:22:43 +01:00
Bartłomiej Dach
3dd3b5e77a
Add failing test case 2023-03-04 13:17:54 +01:00
tsrk
ddd6c1a1c6
refactor(KeyCounter): address bindables issues
`IsCounting` is back being an auto-property.
`countPresses` is now encapsulated and being exposed as an
`IBindable<int>` via `CountPresses`
2023-02-16 22:20:34 +00:00
Susko3
364217829c Add test for ArchiveImportIPCChannel 2023-02-03 18:39:46 +01:00
Susko3
13fc649edf Refactor test to more closely match how OsuGameDesktop works 2023-02-03 18:22:51 +01:00
Dean Herbert
8dc2e6872e Move skin editor to overlays namespace 2023-02-02 14:00:31 +09:00
Joseph Madamba
845bbf55fe Add failing beatmap listing search on initial open test 2023-01-28 12:10:50 -08:00
Dean Herbert
1f47def3c4
Merge branch 'master' into skin-editor-loc 2023-01-17 11:53:08 +09:00
Dean Herbert
4cf448ec11 Use ToString() for test instead of linq skip 2023-01-17 11:51:17 +09:00
ansel
0ec608ec5d Select button using its index in test 2023-01-16 22:47:14 +03:00
Bartłomiej Dach
bf58fe21ce
Merge branch 'master' into beatmap-set-converted-beatmaps 2023-01-16 20:46:41 +01:00
Joseph Madamba
b733f46c6f Apply NRT to BeatmapPicker 2023-01-15 15:09:25 -08:00
Salman Ahmed
13c1b8f5a4 Fix intermittent failure in tests with restarting player instances 2023-01-15 16:06:06 +03:00
Joseph Madamba
5232588a1f Use PerformFromScreen to exit sub screens instead 2022-12-24 20:04:45 -08:00
Joseph Madamba
00ed5d6f92 Merge remote-tracking branch 'upstream/master' into fix-op-non-current-onexiting 2022-12-24 14:01:11 -08:00
Dean Herbert
57048f0eba Add test coverage of featured artist filter confirmation process 2022-12-15 18:42:58 +09:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework 2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
2425878e67 Add test coverage 2022-11-25 20:06:36 +09:00
Salman Ahmed
ca67689a36 Fix intermittent present beatmap test failures 2022-11-19 07:44:43 +03:00
Salman Ahmed
8943819ee7 Add test coverage 2022-11-18 17:49:03 +03:00
Salman Ahmed
82829867db Fix beatmap options test failure due to no beatmap being selected 2022-11-18 07:07:56 +03:00
Bartłomiej Dach
b0314c67aa
Fix failing gameplay bindings test 2022-11-12 14:16:46 +09:00
Salman Ahmed
3909e5730e
Rename test steps
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2022-11-09 21:33:28 +03:00
Dean Herbert
4c15794694 Add test coverage of overlay interplay 2022-11-08 14:58:57 +09:00
Salman Ahmed
45f590ca43 Add test case for hiding cursor on idle 2022-10-15 00:20:22 +03:00
Dean Herbert
7fbbe88c8e Add test coverage of song select score presentation failures 2022-10-03 20:29:44 +09:00
Dean Herbert
ed0752a5f1 Update test assumptions 2022-09-27 21:55:54 +09:00
Dean Herbert
41e69fbca6 Remove "default" prefix from naming 2022-09-18 00:15:26 +09:00
Dean Herbert
51841988bf Rename references to DefaultSkin to have Triangles suffix 2022-09-17 23:57:25 +09:00
Dean Herbert
40a60f7145 Remove all entity framework code and migrations 2022-09-15 16:58:58 +09:00
Dean Herbert
9e3228aa65 Fix completion notification not being posted if completion occurs during NotificationOverlay load 2022-09-06 04:07:49 +09:00
Dean Herbert
6a35b233e5 Merge branch 'master' into remove-dispose-updates 2022-09-01 23:03:19 +09:00
Dean Herbert
a62ba9e0d9 Remove notification blocking behaviour of first run setup 2022-08-31 00:57:18 +09:00
Dean Herbert
a215d009fe Update Remove/RemoveRange/RemoveAll calls in line with framework changes 2022-08-29 15:57:40 +09:00
Joseph Madamba
320c4abb66 Add failing online play non-current sub screen onexiting test 2022-07-31 20:13:06 -07:00
Dean Herbert
0a2265b0e8 Add test coverage of playlist exit confirmation 2022-07-29 17:11:37 +09:00
Dean Herbert
ad482b8afc Tidy up naming of collection dropdowns 2022-07-28 13:57:21 +09:00
Dean Herbert
10efb4bc6c Fix incorrect disposal in teardown steps 2022-06-21 14:08:30 +09:00
Bartłomiej Dach
21d60231b6
Add limited test coverage of osu:// scheme link IPC flow 2022-06-20 22:22:25 +02:00
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