Commit Graph

117 Commits

Author SHA1 Message Date
Dean Herbert
68bad9a277
Attempt file operations more than once in another test instance
See
https://github.com/ppy/osu/pull/29433/checks?check_run_id=28833985792.
2024-08-16 17:39:45 +09:00
Dean Herbert
dd9705b660
Fix file access test failure by forcing retries
See https://github.com/ppy/osu/actions/runs/10369630825/job/28708248682.
2024-08-14 12:26:21 +09:00
Dan Balasescu
1906c2f725
Fix TestTouchScreenDetectionAtSongSelect test failure
https://github.com/ppy/osu/actions/runs/9985890747/job/27597501295

In this case, the settings overlay is taking a very long time to load
(on a background thread), and pops in when it finishes loading because
it's been requested to open.

The opens the settings overlay, closes it (by pressing escape, this does
not actually close it because it's not loaded yet), and then enters song
select by pressing 'P' 3 times. The settings overlay finishes loading at
just the right opportune moment to eat one of the 'P' key presses.
2024-07-18 16:26:16 +09:00
Salman Ahmed
8ca8648a09 Add failing test case 2024-07-10 16:14:12 +03:00
Salman Ahmed
7d667ac46b Fix confirm exit dialog overflowing from too many ongoing operations 2024-07-10 16:06:53 +03:00
Bartłomiej Dach
8abcc70b93
Add medal overlay to game 2024-02-20 16:31:31 +01:00
Dean Herbert
415a65bf59
Add failing tests for beatmap inconsistencies 2024-02-18 19:32:21 +08:00
Salman Ahmed
a96a66bc9e Add failing test case 2024-02-14 02:04:20 +03:00
Dean Herbert
0e41d0c9cf
Add failing test coverage of skin getting nuked
This doesn't fail in headless unfortunately.

Run a few times manually to confirm.
2024-01-16 15:22:38 +09:00
Bartłomiej Dach
8a87301c55
Add test for crashing scenario 2024-01-08 21:34:54 +01:00
Joseph Madamba
b190333c17 Use repeat step for more delay between the two exits 2024-01-04 09:00:24 -08:00
Dean Herbert
5e10f9f899
Fix failing tests due to more textboxes being present with searchable dropdowns 2023-12-13 15:11:47 +09:00
Bartłomiej Dach
d25b54c06d
Split test into two
They would fail on CI when written as one, and I don't care why.
2023-11-02 22:14:38 +01:00
Bartłomiej Dach
21a4da463b
Add failing test covering crash scenario 2023-11-02 21:24:58 +01:00
Bartłomiej Dach
29d4d81eaa
Add test scene for basic touchscreen detection scenarios 2023-11-02 21:24:58 +01:00
Bartłomiej Dach
2f6ff893b5
Automatically activate and deactivate touch device mod in song select 2023-11-02 19:45:48 +01:00
Bartłomiej Dach
980c900f43
Add component for game-wide touch detection 2023-11-02 19:32:56 +01:00
Dean Herbert
37ec10d4f5
Fix TestSongSelectScrollHandling not waiting for VolumeOverlay to load
See https://github.com/ppy/osu/actions/runs/6701786492/job/18210372721.
2023-10-31 13:49:53 +09:00
Bartłomiej Dach
3944b045ed
Add extra test coverage for marking score as failed 2023-10-27 12:17:03 +02:00
Bartłomiej Dach
7140eee870
Add failing test coverage for quick retry after completion not changing rank 2023-10-27 12:17:03 +02:00
Bartłomiej Dach
5d6a58d443
Add failing test scene for scroll handling in song select 2023-10-26 16:24:16 +02:00
Dean Herbert
256c95f045
Add (failing) test coverage of exit/retry during progress to results 2023-10-12 15:42:20 +09:00
Bartłomiej Dach
a42992d3fd
Remove unused local variable 2023-07-16 17:10:26 +02:00
Bartłomiej Dach
72bf43e297
Add failing test covering exit dialog crash 2023-07-16 16:55:20 +02:00
Dean Herbert
a76037b643 Add test coverage of confirm-for-operations 2023-06-23 15:30:21 +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
8514b2758a
Fix rapid back button test failure 2023-05-07 21:07:38 +02:00
Joseph Madamba
845bbf55fe Add failing beatmap listing search on initial open test 2023-01-28 12:10:50 -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
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Salman Ahmed
82829867db Fix beatmap options test failure due to no beatmap being selected 2022-11-18 07:07:56 +03: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
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
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09: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
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
Bartłomiej Dach
76c63f1d0a
Rename ModSelect{Screen -> Overlay} in place of removed old design 2022-05-10 22:56:50 +02:00
Joseph Madamba
bc839be4d8 Add failing rapid back button exit test 2022-05-08 14:40:29 -07: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
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
Dean Herbert
e315313266 Split out IDialogOverlay to allow for easier testing 2022-04-18 18:36:26 +09:00