1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-14 03:27:25 +08:00
Commit Graph

7122 Commits

Author SHA1 Message Date
Dean Herbert
1270ee9624 Update multiple tests to use new assert output for easier to understand failures 2022-08-09 19:19:54 +09:00
Dean Herbert
aa9ced7f04 Add test coverage of ToolbarUserButton 2022-08-09 15:51:10 +09:00
Ryuki
edb8e5e33e
Temporarily emptying TestSceneKeysPerSecondCounter until a good test can be found 2022-08-09 02:43:41 +02:00
BlauFx
e4879aa450
Add test 2022-08-08 21:12:38 +02:00
Bartłomiej Dach
eba070a0f8
Add weak test coverage of broken audio playback after soft-delete 2022-08-08 20:30:37 +02:00
Dean Herbert
e1189da824 Merge branch 'master' into irenderer-glwrapper 2022-08-08 12:31:53 +09:00
Salman Ahmed
f75dced305 Fix possible null assignment inspection in TestScenePreviewTrackManager 2022-08-08 02:00:24 +03:00
Bartłomiej Dach
839409d7ac
Add preset column to solo mod select overlay 2022-08-07 16:20:31 +02:00
Bartłomiej Dach
de64b83532
Add test coverage for desired user selection behaviour 2022-08-07 16:20:16 +02:00
Bartłomiej Dach
25daaa56e2
Add test coverage for desired external selection behaviour 2022-08-07 15:30:20 +02:00
Dean Herbert
4a95638756
Merge branch 'master' into mod-overlay/delete-preset 2022-08-07 12:34:25 +09:00
Dean Herbert
5946124278
Merge pull request #19612 from bdach/mod-overlay/common-delete-dialog
Unify implementations of deletion dialogs
2022-08-07 12:18:03 +09:00
Bartłomiej Dach
6f6beddab5
Add test coverage for mod preset deletion flow 2022-08-06 21:58:55 +02:00
Bartłomiej Dach
9b3183b2b4
Implement mod preset deletion flow 2022-08-06 21:58:55 +02:00
Bartłomiej Dach
26b9adbe0c
Adjust collection deletion test to match new expectations 2022-08-06 21:07:21 +02:00
Bartłomiej Dach
cc353b872c
Add test coverage for other approval events 2022-08-06 18:21:57 +02:00
Salman Ahmed
789e8b4d8d Fix multi-spectator test updating state after removing user
Removing user triggers `playingUsers.Remove`, but doing so before
updating the state leads to `EndGameplay` being called with `State ==
Playing` rather than `Quit`.
2022-08-06 05:41:26 +03:00
Ryuki
0c07df2c26
Remove DT from KPS test 2022-08-05 21:02:37 +02:00
Ryuki
b4e0fa7c53
Rewrite tests for KPS 2022-08-05 15:53:06 +02:00
Dan Balasescu
cf362a6b4f
Merge pull request #19529 from peppy/locally-modified-pill
Show "locally modified" pill when local modifications have been made
2022-08-05 21:12:13 +09:00
Dan Balasescu
c4b9b2a14b Merge branch 'master' into irenderer-glwrapper 2022-08-05 20:35:06 +09:00
Dean Herbert
7c952f8069 Add more test coverage of locally-modified state change 2022-08-05 14:25:10 +09:00
Ryuki
42d1bdfc95
Move KPS calculation to a standalone class 2022-08-05 04:17:01 +02:00
Bartłomiej Dach
ac9321204c
Merge branch 'master' into mod-overlay/create-preset 2022-08-03 21:21:52 +02:00
Dean Herbert
7022d9e5f8 Fix test step names being too long 2022-08-03 21:13:49 +09:00
Dean Herbert
bacbf5b7f0 Update existing test expectations 2022-08-03 20:20:06 +09:00
Dean Herbert
24d84890e4 Change all filter control button state test to until steps
There's multiple schedules at play which could be adding multi-frame
delays. let's play it safe and try and fix flaky tests.

Example of `Schedule` which could cause an issue:
392cb352cc/osu.Game/Collections/CollectionDropdown.cs (L77-L78)

Example of test failure:
https://github.com/ppy/osu/runs/7648118894?check_suite_focus=true
2022-08-03 20:03:07 +09:00
Bartłomiej Dach
add2971eb4
Implement preset creation flow with test coverage 2022-08-02 22:05:54 +02:00
Bartłomiej Dach
1b3074d098
Implement popover for creating mod presets 2022-08-02 22:03:33 +02:00
Dan Balasescu
5a1c05918f Fix test failures 2022-08-02 20:18:45 +09:00
Dan Balasescu
b4e55f7309 Apply IRenderer changes 2022-08-02 19:50:57 +09:00
Bartłomiej Dach
923d9a4e5f
Add failing assertions to demonstrate autosize failure 2022-08-01 22:04:14 +02:00
Dean Herbert
c0e5f11c90
Merge pull request #19532 from frenzibyte/fix-new-items-sort-stability
Fix newly imported beatmaps not using correct comparer for sorting
2022-08-02 02:20:51 +09:00
Dean Herbert
01cc9bd7ef
Merge pull request #19479 from frenzibyte/carousel-update-on-resume
Fix song select not updating selected beatmap card on editor resume
2022-08-02 00:48:18 +09:00
Salman Ahmed
682192dbd7 Add failing test case 2022-08-01 18:43:01 +03:00
Dean Herbert
2519706ad6 Add test coverage of editor crash 2022-08-01 16:53:49 +09:00
Bartłomiej Dach
5a34122a85
Fix test breakage after realm migration 2022-07-31 23:53:46 +02:00
Bartłomiej Dach
9d3cdae4bb
Fix test scene to handle restarts properly 2022-07-31 23:53:46 +02:00
Bartłomiej Dach
9dea8e3d12
Add test coverage of preset soft deletion 2022-07-31 23:53:46 +02:00
Bartłomiej Dach
c837848238
Add extended test coverage of preset realm subscription 2022-07-31 23:53:45 +02:00
Bartłomiej Dach
345f103119
Migrate mod preset column to use realm 2022-07-31 23:53:45 +02:00
Salman Ahmed
b95aff3e5f Add failing test case 2022-07-30 18:50:41 +03:00
Susko3
38a8b9cf0a Add battery info for desktop platforms 2022-07-30 14:26:19 +02:00
Dean Herbert
43e612f6d4
Merge pull request #19455 from peppy/confirm-playlist-discard
Add confirmation dialog when about to discard a playlist
2022-07-30 19:17:49 +09:00
Salman Ahmed
8ca8484f0e Fix failing tests 2022-07-30 11:49:33 +03:00
Salman Ahmed
ec1a7994cc Switch method to statement body for better readability
Almost thought the method was not wrapped in an `AddStep`.
2022-07-30 10:11:01 +03:00
Salman Ahmed
0c125db197 Fix potential nullref on TestSceneAutoplay check steps 2022-07-30 10:11:01 +03:00
Salman Ahmed
3bc1774c87
Merge branch 'master' into pie-chart-progress 2022-07-29 16:54:59 +03:00
Salman Ahmed
3b1a76b190 Remove redundant/overwritten specifications 2022-07-29 16:45:29 +03:00
Salman Ahmed
905bbdc8ee Remove caching of GameplayClockContainer in favour of GameplayClock
Also fixes `SongProgress` being displayed in skin editor on non-gameplay
screens, due to `GameplayClock` not marked as a required dependency.
2022-07-29 16:45:29 +03:00
Dan Balasescu
6703b8df02
Merge pull request #19454 from peppy/filter-control-tests-realm-refresh
Ensure realm is in a good state before asserts in `TestSceneFilterControl`
2022-07-29 17:57:38 +09:00
Dean Herbert
07e3765b34 Ensure collection is added to dropdown before trying to click it 2022-07-29 17:25:30 +09:00
Dean Herbert
0a2265b0e8 Add test coverage of playlist exit confirmation 2022-07-29 17:11:37 +09:00
Dean Herbert
eb92c35335
Merge pull request #19442 from smoogipoo/fix-beginplaying-misordering
Move spectator begin/end playing to SubmittingPlayer
2022-07-29 16:09:50 +09:00
Dean Herbert
e07e761c10 Ensure realm is in a good state before asserts in TestSceneFilterControl 2022-07-29 15:59:53 +09:00
Dan Balasescu
aaa6f963bd Fix potential test failures due to Setup/SetUpSteps ordering 2022-07-29 15:27:39 +09:00
Ryuki
2df24019fd
Merge branch 'master' into kps 2022-07-28 18:38:09 +02:00
Ryuki
079150849a
Add some tests 2022-07-28 18:37:50 +02:00
Ryuki
b2e7da5aa0
Add basic Queue based implementation of KPS 2022-07-28 18:37:12 +02:00
Dean Herbert
45879f7836
Merge pull request #19443 from smoogipoo/fix-intermittent-hud-tests
Fix intermittent HUD tests
2022-07-28 23:20:46 +09:00
Dean Herbert
e664690fe2 Remove unnecessary LoadTrack call 2022-07-28 22:19:46 +09:00
Dean Herbert
3005ff1b9f Merge branch 'master' into pie-chart-progress 2022-07-28 22:19:27 +09:00
Dan Balasescu
aa03df905f
Merge pull request #19441 from peppy/test-working-beatmap-unfuck
Reduce calls to `LoadTrack` by implicitly running on test/dummy classes
2022-07-28 22:05:25 +09:00
Dan Balasescu
11e0022fad Merge branch 'master' into realm-collections 2022-07-28 21:00:08 +09:00
Dan Balasescu
ce694123eb Move spectator begin/end playing to SubmittingPlayer 2022-07-28 20:44:04 +09:00
Dean Herbert
7108553883 Tidy up various things everywhere 2022-07-28 18:25:14 +09:00
Dean Herbert
a21aee4e9c Reduce calls to LoadTrack by implicitly running on test/dummy classes 2022-07-28 18:11:40 +09:00
Dan Balasescu
1039338d80 Fix intermittent HUD tests 2022-07-28 17:58:07 +09:00
Dan Balasescu
cd01c5d3ac Fix assertion 2022-07-28 16:34:31 +09:00
Nitrous
0d36907cad
apply code quality fixes 2022-07-28 15:30:45 +08:00
Nitrous
70ed347b06
simplify helper methods 2022-07-28 15:19:35 +08:00
Dean Herbert
2b9d46d803 Remove unused RulesetStore from BeatmapManager constructor 2022-07-28 16:19:05 +09:00
Nitrous
db62d4be3a
apply suggestions
- refactor `SongProgress`
- make`UpdateProgress` more readable
- enable NRT on new classes
- refactor `TestSceneSongProgress` to use `GameplayClockContainer`
2022-07-28 15:15:41 +08:00
Dan Balasescu
6bf293e130 Fix managed object reused between test runs 2022-07-28 15:45:33 +09:00
Dean Herbert
8ac886a247 Update test to account for sort order 2022-07-28 15:20:25 +09:00
Dean Herbert
ad482b8afc Tidy up naming of collection dropdowns 2022-07-28 13:57:21 +09:00
Dean Herbert
34a2d1a6e1 Fix ManageCollectionsDialog and remove weird placeholder logic 2022-07-28 13:57:21 +09:00
Dean Herbert
67c7f324ee Simplify CollectionFilterDropdown filter flow weirdness 2022-07-28 13:57:21 +09:00
Dean Herbert
0913cf013c Split out tests and fix variable conflict 2022-07-28 13:24:14 +09:00
Dean Herbert
aa65b73f19
Merge branch 'master' into add-notif-externalbutton 2022-07-28 12:17:36 +09:00
Dean Herbert
8da499fb0f Add proper test coverage 2022-07-28 12:16:21 +09:00
Nitrous
9088caa377
move LegacyComboCounter to osu.Game.Skinning 2022-07-28 08:36:26 +08:00
Dean Herbert
438067a18b Convert realm data propagation to more correctly use Live<T>
wip
2022-07-27 19:35:09 +09:00
Dean Herbert
41393616d8 Replace BeatmapCollection with RealmBeatmapCollection 2022-07-27 19:35:09 +09:00
Dean Herbert
9c543fef48 Remove CollectionManager 2022-07-27 18:45:33 +09:00
Nitrous
6af6f03e29
refactor song progress test scene 2022-07-27 15:57:47 +08:00
Nitrous
1e013bd4e9
move song progress graph to its own test scene 2022-07-27 15:57:23 +08:00
Nitrous
37e642b0bd
make SongProgress abstract
- move unrelated logic to `DefaultSongProgress`
- make `LegacySongProgress` inherit `SongProgress`
2022-07-27 15:19:21 +08:00
Dean Herbert
6b73f7c7ec Split out legacy import path from realm manager 2022-07-27 15:04:09 +09:00
Dan Balasescu
8f7dff5c2c
Merge pull request #19378 from peppy/beatmap-update-test
Add separate beatmap update flow to handle edge cases better
2022-07-26 18:49:20 +09:00
Dean Herbert
7f75184a01
Merge branch 'master' into beatmap-update-test 2022-07-26 17:27:36 +09:00
Salman Ahmed
91ffa7007f Improve existing test coverage to cover order changes from other sort modes 2022-07-26 10:24:51 +03:00
Dean Herbert
4efe09e7c2
Merge pull request #19377 from frenzibyte/fix-timeline-tests
Fix intermittent timeline zoom test failures
2022-07-26 15:18:35 +09:00
Dean Herbert
ef10145d6f Rename MenuCursorContainer and clean up code 2022-07-26 14:11:52 +09:00
Salman Ahmed
e5355f314d Use longer hash string 2022-07-25 15:19:32 +03:00
Dean Herbert
6a3e8e31de Centralise calls to reset online info of a BeatmapInfo 2022-07-25 19:51:19 +09:00
Salman Ahmed
d04df19c7e Remove APIScore and replace its final usage 2022-07-25 13:13:46 +03:00
Dan Balasescu
1d48cee230
Merge pull request #19373 from peppy/fix-negative-star-rating-display
Fix star ratings which are still being calculated showing as "-1" at song select
2022-07-25 18:20:30 +09:00
Salman Ahmed
bc2b629ee7 Let tests wait until track load before testing zoom 2022-07-25 12:07:50 +03:00
Salman Ahmed
123930306b Refactor ZoomableScrollContainer to allow setting up zoom range and initial zoom after load 2022-07-25 12:07:50 +03:00
Salman Ahmed
93175eaf6e Re-enable timeline zoom test and remove flaky attribute 2022-07-25 11:39:23 +03:00
Dean Herbert
6bf2645b1a Fix StarRatingDisplay not handling negative numbers as "pending" 2022-07-25 15:44:54 +09:00
Salman Ahmed
6bdd1f43a2 Add visual test coverage 2022-07-25 09:40:20 +03:00
Salman Ahmed
7facd6d822
Merge branch 'master' into beatmap-overlay-null-pp 2022-07-25 07:38:59 +03:00
Salman Ahmed
6c95c49da3 Mark test score with null PP for visual testing 2022-07-25 07:31:52 +03:00
Dan Balasescu
0226b358ee Disable timeline test for now 2022-07-25 13:20:33 +09:00
Dean Herbert
12e2e63a1c
Merge pull request #19349 from bdach/mod-overlay/presets-column
Implement basic appearance of mod preset column
2022-07-25 13:10:47 +09:00
Salman Ahmed
fa9daa6899 Fix TestSceneReplayRecorder not using score provided by gameplay state 2022-07-25 05:21:27 +03:00
Salman Ahmed
feef16b09b Add potentially failing test case 2022-07-25 04:18:30 +03:00
Bartłomiej Dach
6a67d76d7c
Add basic mod preset column implementation 2022-07-24 16:39:04 +02:00
Salman Ahmed
0c16ef3e2e Add failing test case 2022-07-24 08:34:24 +03:00
Salman Ahmed
2829a7e836
Merge branch 'master' into beatmap-overlay-modded-stats 2022-07-23 10:38:13 +03:00
Salman Ahmed
c937c0548e Add test coverage 2022-07-23 10:16:11 +03:00
Salman Ahmed
3aecd288e2 Enable NRT on TopLocalRank 2022-07-23 09:27:03 +03:00
Salman Ahmed
727fe76b60 Fix TopLocalRank hacking around presence to hide on null rank
Fixed this here because that blocks `Schedule` from running, and I don't
want to add another override to the `IsPresent` flag.
2022-07-23 09:22:22 +03:00
Salman Ahmed
1220250bb6 Improve test scene and add failing test case 2022-07-23 08:03:48 +03:00
Bartłomiej Dach
d0e15d04cc
Merge branch 'master' into mod-overlay/preset-panel 2022-07-22 19:23:09 +02:00
Dan Balasescu
6b69ff19c8
Remove unused using 2022-07-22 17:24:46 +09:00
Salman Ahmed
e5ab6652fd Fix one more case of referencing old mod select overlay in tests 2022-07-22 11:12:24 +03:00
Dean Herbert
e20458421a Update flaky timeline zoom test to output something useful 2022-07-22 16:05:20 +09:00
Bartłomiej Dach
bdff7f1ef4
Implement basic appearance of mod preset panels 2022-07-21 23:29:21 +02:00
Salman Ahmed
559254db31
Merge branch 'master' into fix-update-button-test-failure 2022-07-21 11:15:43 +03:00
Dan Balasescu
defadeef47
Merge pull request #19250 from peppy/fps-counter
Add game-side FPS counter
2022-07-21 16:26:38 +09:00
Dean Herbert
fc0c9f76bd Fix UpdateBeatmapSetButton intermittent test failure
Carousel would only expire items when off-screen. This meant that for a
case (like a test) where items are generally always on-screen,
`UpdateBeatmapSet` calls would result in panels remaining hidden but not
cleaned up.
2022-07-21 16:24:48 +09:00
Salman Ahmed
5513a8b6b4 Fix changelog overlay tests failing due to missing CreatedAt date 2022-07-21 07:21:27 +03:00
Dean Herbert
0c3d43026d Add initial structure for fps counter 2022-07-20 23:49:19 +09:00
Dean Herbert
62133fa069
Merge pull request #19246 from frenzibyte/fix-wiki-navigation
Fix wiki overlay not handling path redirection properly
2022-07-20 20:08:11 +09:00
Dan Balasescu
f9c02c34b6 Merge branch 'master' into beatmap-update-online-flow 2022-07-20 15:15:51 +09:00
Salman Ahmed
e7f35701db Add failing test case 2022-07-20 09:06:11 +03:00
Dean Herbert
af4d7feb9b
Merge pull request #19244 from frenzibyte/highlight-perfect-ticks
Highlight perfect slider tick/end values in beatmap info leaderboards
2022-07-20 14:44:03 +09:00
Salman Ahmed
ae6aab2555
Merge branch 'master' into edit-map-carousel 2022-07-20 02:43:47 +03:00
Salman Ahmed
4d1f9a1329 Adjust test scene to cover slider ticks 2022-07-20 00:53:10 +03:00
Dean Herbert
6357223341 Fix incorrect DI fetch and apply nullability to ModelDownloader 2022-07-19 20:06:34 +09:00
Dean Herbert
17046b0553 Add basic handling of download failures 2022-07-19 19:01:23 +09:00
Dean Herbert
f6de76e057 Move test to stand-alone class and add full ui testing 2022-07-19 18:50:27 +09:00
Dean Herbert
eaf4f6dbb7 Add beatmap update button 2022-07-19 18:29:36 +09:00
Adam Baker
59018ab5ba Fix multiplayer queue edit button opening to the wrong beatmap 2022-07-18 23:21:16 -05:00
Bartłomiej Dach
6f37487528
Replace calls to defective Humanizer methods with correct version 2022-07-18 22:34:58 +02:00
Salman Ahmed
b5c7d07ba8
Merge branch 'master' into fix-user-profile-overlay 2022-07-18 10:27:33 +03:00
Dean Herbert
a7f19cc796
Merge pull request #19137 from frenzibyte/country-enum
Replace `Country` class with enumeration
2022-07-18 16:12:24 +09:00
Salman Ahmed
018da74fe8 Replace default with CountryCode.Unknown 2022-07-18 08:54:35 +03:00
Salman Ahmed
cf99849478 CountryCode.XX -> CountryCode.Unknown 2022-07-18 08:45:54 +03:00
Salman Ahmed
100c53f9ef Country -> CountryCode 2022-07-18 08:40:34 +03:00
tsunyoku
d1c60b5741 correct assertion logic 2022-07-17 23:53:35 +01:00
tsunyoku
d17acd0f45 add message to Assert.That 2022-07-17 23:16:27 +01:00
tsunyoku
92513dc936 reverse IsInstanceOfType logic 2022-07-17 22:49:09 +01:00
tsunyoku
0c50931d2f change method of finding incompatibleMod 2022-07-17 22:10:35 +01:00
tsunyoku
dcce14ae8f rename NoConflictingModAcronyms to ModValidity, add test for two-way mod incompatibility 2022-07-17 21:15:29 +01:00
tsunyoku
14ae183c70 update tests to match SoloScoreInfo 2022-07-17 14:22:46 +01:00
tsunyoku
71a4b8843f update tests to new profile score format 2022-07-17 14:08:44 +01:00
Dean Herbert
acd5254f51 Add test coverage ensuring unique acronyms 2022-07-16 17:19:55 +09:00
Salman Ahmed
e62049f4a9 Update various usages of Country inline with new enum 2022-07-16 05:04:24 +03:00
Salman Ahmed
68afb65aff Move default state steps to SetUp rather than duplicating per test case 2022-07-15 22:10:21 +03:00
Salman Ahmed
8f7b3cf11a Merge branch 'master' into Save-Score-Failed 2022-07-15 22:10:19 +03:00
Dean Herbert
21433d4ecb Add test coverage of saving a failed score 2022-07-15 20:14:58 +09:00
Dean Herbert
4b253f83c3 Fix intermittent test failures due to randomised score statistics 2022-07-15 17:39:08 +09:00
Dan Balasescu
c1dd1cfead
Merge pull request #19082 from peppy/api-solo-score-model
Add and consume `SoloScoreInfo`
2022-07-15 15:20:18 +09:00
Salman Ahmed
0bafafd63b Remove unnecessary test coverage
RIP hours.
2022-07-15 03:20:52 +03:00
Salman Ahmed
be69514002 Fix CollectionManager opening file multiple times across test scene 2022-07-14 06:21:23 +03:00
Salman Ahmed
cb2f0b8c67 Add test coverage for collection items 2022-07-14 03:42:03 +03:00
Salman Ahmed
9ec4fbb86d Add test coverage for details item 2022-07-14 03:41:47 +03:00
Salman Ahmed
099a7e90d6 Centralise creation of playlist in test scene 2022-07-14 02:19:30 +03:00
Salman Ahmed
102d0415f1 Merge branch 'master' into drawable-playlist-item-collection 2022-07-14 00:10:49 +03:00
Dan Balasescu
7ed05277f8
Merge pull request #19098 from peppy/last-played
Add "last played" sort mode to song select
2022-07-13 22:44:50 +09:00
Dean Herbert
2e86e7ccee Add extra steps to TestExitWithoutSave to guarantee track type 2022-07-13 19:41:46 +09:00
Dean Herbert
4b96d74b0c Add test coverage of LastPlayed updating 2022-07-13 16:43:43 +09:00
Dan Balasescu
363e23c251 Use correct HitResult in test 2022-07-12 18:47:44 +09:00
Dean Herbert
0fe3bac173 Store mods to array and update test scenes 2022-07-12 18:00:25 +09:00
Dean Herbert
779d512b44 Merge branch 'master' into mod-icon-colors 2022-07-12 14:36:55 +09:00
Dean Herbert
90fecbc9c7 Add test showing all mod icons for reference 2022-07-12 14:32:39 +09:00
Dean Herbert
aac3c166de
Merge pull request #19038 from novialriptide/replay-user-bug-fix
Populate user ID for locally imported scores
2022-07-12 13:55:11 +09:00
為什麼
079fcf13a6 Add missing import. 2022-07-12 09:41:03 +08:00
andy
3dbd0c9055
Update osu.Game.Tests/Visual/Editing/TimelineTestScene.cs
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-07-12 09:37:16 +08:00
Salman Ahmed
09bfca4e4a Fix build failing on tests 2022-07-11 21:45:39 +03:00
Joseph Madamba
6220650ea3 Fix dialog overlay not loading in time for headless test 2022-07-11 02:29:56 -07:00
為什麼
8e1ed1c621 Mark CreateHitObjectComposer() accept null.
And add the null check in the test case.
2022-07-10 10:15:27 +08:00
Joseph Madamba
5fcc4bf713 Add failing sample playback disabled check 2022-07-09 12:10:18 -07:00
Salman Ahmed
667b1d795d Ensure score has custom ruleset 2022-07-08 19:15:03 +03:00
Salman Ahmed
8c7aabccb0 Fix custom legacy ID in test scene not overriding base value 2022-07-08 19:01:21 +03:00
Dean Herbert
ac3cdf103a Fix test not failing against master 2022-07-08 19:17:51 +09:00
Dean Herbert
5651eca06c Merge branch 'master' into custom-ruleset-score-import 2022-07-08 19:03:47 +09:00
Dean Herbert
3c8f06403c Make test work properly 2022-07-08 19:03:26 +09:00
Dan Balasescu
26d88aa326 Fix intermittent MusicController tests 2022-07-08 14:29:15 +09:00
Salman Ahmed
67fa15f231 Remove no longer required context menu container in ParticipantsList 2022-07-08 01:42:55 +03:00
Dean Herbert
c53dd4a703 Fix editor saving not updating BeatmapSetInfo's hash 2022-07-08 02:33:14 +09:00
Dean Herbert
dd5b127fb5 Update various tests to enable NRT to avoid new inspection failures 2022-07-07 17:51:49 +09:00
Dean Herbert
57b2f8189c Add back test workaround for TestScenePlayerScoreSubmission with updated explanation
This reverts commit f88e2aa025.
2022-07-07 17:42:03 +09:00
Dean Herbert
b663986b9f Add test coverage of locally available without replay button handling 2022-07-07 17:04:04 +09:00
Dean Herbert
461d133c1f Add test coverage of score importing 2022-07-07 16:43:31 +09:00
Dean Herbert
f88e2aa025 Remove EF test workaround 2022-07-07 15:02:03 +09:00
Joseph Madamba
f1b55d743c Fix delete local score test having no files 2022-07-04 11:04:20 -07:00
Dan Balasescu
9bf91835b6
Merge pull request #18962 from peppy/slider-range-control
Move star difficulty filter to song select
2022-07-03 21:58:00 +09:00
Dan Balasescu
385bd5a1b2
Merge pull request #18965 from peppy/mark-flaky-tests
Mark, document and silence remaining flaky tests on standard CI runs
2022-07-03 21:41:14 +09:00
Dan Balasescu
724fd19038 Remove nullable disables 2022-07-03 21:15:13 +09:00
Dan Balasescu
982bcc4500
Merge pull request #18981 from peppy/fix-beatmap-info-wedge-test
Fix `BeatmapInfoWedge` test potentially failing due to quick initial load
2022-07-03 13:10:16 +09:00
Salman Ahmed
f09c46238d
Merge branch 'master' into fix-channel-id-clash 2022-07-02 10:21:47 +03:00
Dean Herbert
2cc9c579d4
Merge pull request #18969 from smoogipoo/fix-multiplayer-cross-pollution
Fix cross-pollution of server- and client-side multiplayer objects in tests
2022-07-02 13:18:35 +09:00
Dean Herbert
2352636bf2 Fix ID clash with announce and PM channels in chat overlay tests
Yet Another Issue.

https://github.com/ppy/osu/runs/7159306924?check_suite_focus=true

Not sure why announce channel was using a user id for its channel ID.
Bad copy paste?
2022-07-02 13:11:50 +09:00
Dean Herbert
1a14808c39 Fix BeatmapInfoWedge test potentially failing due to quick initial load
Was doing a comparison of previous vs new content after explicitly doing
a load in a previous step.
2022-07-02 13:03:14 +09:00
Dan Balasescu
3b1842a2c2
Merge pull request #18835 from peppy/beatmap-update-flow
Split out beatmap update tasks to `BeatmapUpdater` and invoke from editor save flow
2022-07-01 20:28:04 +09:00
Dan Balasescu
93c68e4329 More test hardening around ClientAPIRoom usages 2022-07-01 19:49:27 +09:00
Dean Herbert
6baccad058
Merge pull request #18821 from ggliv/locked-room-filter
Add room access type filter to multiplayer lounge screen
2022-07-01 19:37:43 +09:00
Dan Balasescu
b64c0d011c Isolate client's Room from TestMultiplayerClient 2022-07-01 19:23:25 +09:00
Dan Balasescu
0be858b5bf Rename APIRoom -> ClientAPIRoom, remove unused asserts 2022-07-01 19:21:59 +09:00
Dean Herbert
b829884861
Merge pull request #18963 from peppy/more-placeholder-suggestions
Add difficulty filter reset to song select "no results" suggestions
2022-07-01 17:55:23 +09:00
Dean Herbert
e213c1a4ef Rename enum to explicitly mention it is a filter 2022-07-01 17:27:03 +09:00
Dean Herbert
9911c6cbf0
Merge branch 'master' into locked-room-filter 2022-07-01 17:17:01 +09:00
Dean Herbert
0e1f08eff8 Fix regressing BeatmapRecommendations tests due to diffcalc running at 2022-07-01 17:10:15 +09:00
Dean Herbert
17ad6648d1 Fix new test failing on headless runs 2022-07-01 17:07:00 +09:00
Dean Herbert
8f8c2a8c9a Remove one flaky test description (fixed via #18966) 2022-07-01 16:55:47 +09:00
Dan Balasescu
58c9bb031f Apply PR reviews/fixes 2022-07-01 16:51:15 +09:00
Dan Balasescu
c22e77e481 Fix test sometimes referencing old ModSelect object 2022-07-01 16:46:27 +09:00
Dean Herbert
b597843579 Mark and document remaining flaky tests 2022-07-01 16:17:40 +09:00
Dean Herbert
3e0f4e7609 Add test coverage of difficulty filter reset 2022-07-01 15:28:55 +09:00
Dean Herbert
32139ac13f Tidy up implementation and add basic visual test 2022-07-01 15:16:58 +09:00
Dean Herbert
84ecd524c8 Move wait steps upwards 2022-06-30 17:58:43 +09:00
Dean Herbert
7ab8335935 Fix various multiplayer test failures due to not waiting for ongoing operation
As seen at
https://teamcity.ppy.sh/buildConfiguration/Osu_Build/1138?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildChangesSection=true&expandBuildTestsSection=true.
2022-06-30 17:42:45 +09:00
Dean Herbert
98938821e5 Merge branch 'master' into beatmap-update-flow 2022-06-30 16:44:17 +09:00
Dan Balasescu
c5d31f50cd Attempt to fix flaky TestSceneAutoplay test 2022-06-30 11:38:51 +09:00
Dean Herbert
165af8392f
Merge pull request #18944 from bdach/editor-navigation-test-again-again 2022-06-30 10:37:56 +09:00
Bartłomiej Dach
8171deec49
Attempt to fix editor navigation test failures again
First of all, stop relying that `InputManager` will successfully press
the gameplay test button, because it won't if it's obscured by the
notification overlay. Closing the overlay in a loop doesn't work because
there's a chance that a notification is posted, then all overlays are
closed, then another notification is posted, and so the button still
isn't clickable. Instead, use the `TestGameplay()` method directly.

Secondly, the notifications will still block `EditorPlayerLoader` from
transitioning to `EditorPlayer`. Here we have no other choice than to
aggressively dismiss notifications every spin of the relevant until
step and hope we eventually progress to `EditorPlayer`.
2022-06-29 22:45:56 +02:00
Bartłomiej Dach
381deaf62d
Merge branch 'master' into fix-flaky-placeholder-test 2022-06-29 22:31:45 +02:00
Dean Herbert
46cbbf5c6e Fix flaky song select placeholder test by changing ruleset post-display
Was failing occasionally due to the beatmap present operation causing
the test's ruleset change to undo.

```csharp
TearDown : System.TimeoutException : "wait for placeholder visible" timed out
--TearDown
   at osu.Framework.Testing.Drawables.Steps.UntilStepButton.<>c__DisplayClass11_0.<.ctor>b__0()
   at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
   at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
--- End of stack trace from previous location ---
   at osu.Framework.Testing.TestSceneTestRunner.TestRunner.RunTestBlocking(TestScene test)
   at osu.Game.Tests.Visual.OsuTestScene.OsuTestSceneTestRunner.RunTestBlocking(TestScene test) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Tests/Visual/OsuTestScene.cs:line 503
   at osu.Framework.Testing.TestScene.RunTestsFromNUnit()
------- Stdout: -------
[runtime] 2022-06-29 10:36:45 [verbose]: 💨 Class: TestScenePlaySongSelect
[runtime] 2022-06-29 10:36:45 [verbose]: 🔶 Test:  TestPlaceholderConvertSetting
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #1 exit all screens
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #2 reset defaults
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #3 delete all beatmaps
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #4 change ruleset to 2
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #5 import test map for ruleset 0
[database] 2022-06-29 10:36:45 [verbose]: [efc1a] Beginning import from unknown...
[database] 2022-06-29 10:36:45 [verbose]: [efc1a] Import successfully completed!
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #6 wait for imported to arrive in carousel
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #7 change convert setting
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #8 create song select
[runtime] 2022-06-29 10:36:45 [verbose]: ScreenTestScene screen changed → TestScenePlaySongSelect+TestSongSelect
[runtime] 2022-06-29 10:36:45 [verbose]: 📺 ScreenTestScene(OsuScreenStack)#338(depth:1) loading TestScenePlaySongSelect+TestSongSelect#263
[runtime] 2022-06-29 10:36:45 [verbose]: decoupled ruleset transferred ("" -> "osu!catch")
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #9 wait for present
[runtime] 2022-06-29 10:36:45 [verbose]: 📺 ScreenTestScene(OsuScreenStack)#338(depth:1) entered TestScenePlaySongSelect+TestSongSelect#263
[runtime] 2022-06-29 10:36:45 [verbose]: 📺 BackgroundScreenStack#328(depth:1) loading BackgroundScreenBeatmap#338
[runtime] 2022-06-29 10:36:45 [verbose]: 📺 BackgroundScreenStack#328(depth:1) entered BackgroundScreenBeatmap#338
[runtime] 2022-06-29 10:36:45 [verbose]: Song select updating selection with beatmap:null ruleset:fruits
[runtime] 2022-06-29 10:36:45 [verbose]: Song select changing beatmap from "please load a beatmap! - no beatmaps available!" to "null"
[runtime] 2022-06-29 10:36:45 [verbose]: Song select working beatmap updated to Some Artist 0 - Some Song (set id 6224) ece7b702-895c-4f15-892f-05e4ff5e9a24 (Some Guy 3) [Normal 6224000 (length 0:50, bpm 106.7)]
[runtime] 2022-06-29 10:36:45 [verbose]: Song select updating selection with beatmap:null ruleset:osu
[runtime] 2022-06-29 10:36:45 [verbose]: decoupled ruleset transferred ("osu!catch" -> "osu!")
[runtime] 2022-06-29 10:36:45 [verbose]: Song select updating selection with beatmap:74232aa2-2a1f-4920-b643-e85976838251 ruleset:osu
[runtime] 2022-06-29 10:36:45 [verbose]: Song select decided to ensurePlayingSelected
[runtime] 2022-06-29 10:36:45 [verbose]: Game-wide working beatmap updated to Some Artist 0 - Some Song (set id 6224) ece7b702-895c-4f15-892f-05e4ff5e9a24 (Some Guy 3) [Normal 6224000 (length 0:50, bpm 106.7)]
[runtime] 2022-06-29 10:36:45 [debug]: Focus changed from nothing to SeekLimitedSearchTextBox.
[network] 2022-06-29 10:36:45 [verbose]: Failing request osu.Game.Online.API.Requests.GetBeatmapRequest (System.InvalidOperationException: DummyAPIAccess cannot process this request.)
[runtime] 2022-06-29 10:36:45 [verbose]: ✔️ 16 repetitions
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #10 wait for carousel loaded
[runtime] 2022-06-29 10:36:45 [verbose]: 🔸 Step #11 wait for placeholder visible
[runtime] 2022-06-29 10:36:55 [verbose]: 💥 Failed (on attempt 1,459)
[runtime] 2022-06-29 10:36:55 [verbose]:  Currently loading components (0)
[runtime] 2022-06-29 10:36:55 [verbose]: 🧵 Task schedulers
[runtime] 2022-06-29 10:36:55 [verbose]: LoadComponentsAsync (standard) concurrency:4 running:0 pending:0
[runtime] 2022-06-29 10:36:55 [verbose]: LoadComponentsAsync (long load) concurrency:4 running:0 pending:0
[runtime] 2022-06-29 10:36:55 [verbose]: 🎱 Thread pool
[runtime] 2022-06-29 10:36:55 [verbose]: worker:          min 1      max 32,767 available 32,766
[runtime] 2022-06-29 10:36:55 [verbose]: completion:      min 1      max 1,000  available 1,000
[runtime] 2022-06-29 10:36:55 [debug]: Focus on "SeekLimitedSearchTextBox" no longer valid as a result of unfocusIfNoLongerValid.
[runtime] 2022-06-29 10:36:55 [debug]: Focus changed from SeekLimitedSearchTextBox to nothing.
```
2022-06-30 04:45:04 +09:00
Dean Herbert
13108155d3 Fix crash on visual esting TestSceneChatOverlay due to null user 2022-06-30 03:43:56 +09:00
Joseph Madamba
36e71d39f2 Fix one more mod settings test 2022-06-28 09:54:18 -07:00
Joseph Madamba
d07c2a64b9 Remove unused using 2022-06-28 08:39:09 -07:00
Joseph Madamba
f07107aba9 Fix failing diff adjust slider tests 2022-06-28 08:38:15 -07:00
Dean Herbert
ed1b809f54 Add missing request handling to actually join PM channels 2022-06-28 18:11:37 +09:00
Dean Herbert
21d31ee218 Ensure joined channels are actually joined to avoid unexpected tab order 2022-06-28 18:11:37 +09:00
Dan Balasescu
d630b62cfc
Merge pull request #18915 from peppy/slider-snaking-test-refactoring
Apply various refactorings to `TestSceneSliderSnaking`
2022-06-28 16:16:35 +09:00
Dan Balasescu
8e4a6c43b5
Merge pull request #18914 from peppy/spectator-playback-test-leniences
Increase leniences on `TestSceneSpectatorPlayback.TestWithSendFailure`
2022-06-28 16:15:51 +09:00
Dean Herbert
35745c83b7 Replace dodgy SetUpSteps overriding with usage of HasCustomSteps 2022-06-28 15:19:02 +09:00
Dean Herbert
a2701a3205 Increase leaniences on TestSceneSpectatorPlayback.TestWithSendFailure
Not really sure how to improve this further, but should help with cases
like this:

```csharp
[runtime] 2022-06-28 05:32:06 [verbose]: 💨 Class: TestSceneSpectatorPlayback
[runtime] 2022-06-28 05:32:06 [verbose]: 🔶 Test:  TestWithSendFailure
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #1 Setup containers
[runtime] 2022-06-28 05:32:06 [verbose]: Received 1 new frames (total 1 of 2)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #2 received frames
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 7 of 8)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 13 of 19)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 19 of 29)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 25 of 44)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 31 of 45)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 37 of 59)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 43 of 67)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 49 of 125)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 55 of 126)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 61 of 127)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 67 of 128)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 73 of 129)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 79 of 130)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 85 of 131)
[runtime] 2022-06-28 05:32:06 [verbose]: ✔️ 22 repetitions
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 91 of 132)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 97 of 133)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 103 of 134)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 109 of 135)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 115 of 136)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 121 of 137)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #3 start failing sends
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 127 of 138)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #4 wait for send attempts
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #5 frames did not increase
[runtime] 2022-06-28 05:32:06 [verbose]: 💥 Failed
[runtime] 2022-06-28 05:32:06 [verbose]:  Currently loading components (0)
[runtime] 2022-06-28 05:32:06 [verbose]: 🧵 Task schedulers
[runtime] 2022-06-28 05:32:06 [verbose]: LoadComponentsAsync (standard) concurrency:4 running:0 pending:0
[runtime] 2022-06-28 05:32:06 [verbose]: LoadComponentsAsync (long load) concurrency:4 running:0 pending:0
[runtime] 2022-06-28 05:32:06 [verbose]: 🎱 Thread pool
[runtime] 2022-06-28 05:32:06 [verbose]: worker:          min 1      max 32,767 available 32,766
[runtime] 2022-06-28 05:32:06 [verbose]: completion:      min 1      max 1,000  available 1,000
[runtime] 2022-06-28 05:32:06 [verbose]: Host execution state changed to Stopping
```

https://teamcity.ppy.sh/buildConfiguration/Osu_Build/811?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildTestsSection=true
2022-06-28 14:58:34 +09:00
Dean Herbert
c1075d113f Add logging around current channel changes and join requests
Tracking down a flaky test
(https://teamcity.ppy.sh/buildConfiguration/Osu_Build/553?hideProblemsFromDependencies=false&expandBuildTestsSection=true&hideTestsFromDependencies=false):

```csharp
TearDown : System.TimeoutException : "PM Channel 1 displayed" timed out
--TearDown
   at osu.Framework.Testing.Drawables.Steps.UntilStepButton.<>c__DisplayClass11_0.<.ctor>b__0()
   at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
   at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
--- End of stack trace from previous location ---
   at osu.Framework.Testing.TestSceneTestRunner.TestRunner.RunTestBlocking(TestScene test)
   at osu.Game.Tests.Visual.OsuTestScene.OsuTestSceneTestRunner.RunTestBlocking(TestScene test) in /opt/buildagent/work/ecd860037212ac52/osu.Game/Tests/Visual/OsuTestScene.cs:line 503
   at osu.Framework.Testing.TestScene.RunTestsFromNUnit()
------- Stdout: -------
[runtime] 2022-06-27 23:18:55 [verbose]: 💨 Class: TestSceneChatOverlay
[runtime] 2022-06-27 23:18:55 [verbose]: 🔶 Test:  TestKeyboardNextChannel
[runtime] 2022-06-27 23:18:55 [verbose]: Chat is now polling every 60000 ms
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #1 Setup request handler
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #2 Add test channels
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #3 Show overlay with channels
[runtime] 2022-06-27 23:18:55 [verbose]: Unhandled Request Type: osu.Game.Online.API.Requests.CreateChannelRequest
[network] 2022-06-27 23:18:55 [verbose]: Failing request osu.Game.Online.API.Requests.CreateChannelRequest (System.InvalidOperationException: DummyAPIAccess cannot process this request.)
[runtime] 2022-06-27 23:18:55 [verbose]: Unhandled Request Type: osu.Game.Online.API.Requests.CreateChannelRequest
[network] 2022-06-27 23:18:55 [verbose]: Failing request osu.Game.Online.API.Requests.CreateChannelRequest (System.InvalidOperationException: DummyAPIAccess cannot process this request.)
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #4 Select channel 1
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #5 Channel 1 is visible
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #6 Press document next keys
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #7 Channel 2 is visible
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #8 Press document next keys
[runtime] 2022-06-27 23:18:55 [verbose]: 🔸 Step #9 PM Channel 1 displayed
[network] 2022-06-27 23:18:55 [verbose]: Request to https://a.ppy.sh/587 failed with System.Net.WebException: NotFound.
[network] 2022-06-27 23:18:55 [verbose]: Request to https://a.ppy.sh/503 failed with System.Net.WebException: NotFound.
[runtime] 2022-06-27 23:19:05 [verbose]: 💥 Failed (on attempt 5,550)
[runtime] 2022-06-27 23:19:05 [verbose]:  Currently loading components (0)
[runtime] 2022-06-27 23:19:05 [verbose]: 🧵 Task schedulers
[runtime] 2022-06-27 23:19:05 [verbose]: LoadComponentsAsync (standard) concurrency:4 running:0 pending:0
[runtime] 2022-06-27 23:19:05 [verbose]: LoadComponentsAsync (long load) concurrency:4 running:0 pending:0
[runtime] 2022-06-27 23:19:05 [verbose]: 🎱 Thread pool
[runtime] 2022-06-27 23:19:05 [verbose]: worker:          min 1      max 32,767 available 32,766
[runtime] 2022-06-27 23:19:05 [verbose]: completion:      min 1      max 1,000  available 1,000
[runtime] 2022-06-27 23:19:05 [debug]: Focus on "ChatTextBox" no longer valid as a result of unfocusIfNoLongerValid.
[runtime] 2022-06-27 23:19:05 [debug]: Focus changed from ChatTextBox to nothing.
```

This kind of logging should be helpful:

```csharp
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #5 Channel 1 is visible
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #6 Press document next keys
[runtime] 2022-06-28 04:59:57 [verbose]: Current channel changed to #channel-2
[runtime] 2022-06-28 04:59:57 [debug]: Pressed (DocumentNext) handled by TestSceneChatOverlay+TestChatOverlay.
[runtime] 2022-06-28 04:59:57 [debug]: KeyDownEvent(PageDown, False) handled by ManualInputManager+LocalPlatformActionContainer.
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #7 Channel 2 is visible
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #8 Press document next keys
[runtime] 2022-06-28 04:59:57 [verbose]: Current channel changed to test user 685
[runtime] 2022-06-28 04:59:57 [debug]: Pressed (DocumentNext) handled by TestSceneChatOverlay+TestChatOverlay.
[runtime] 2022-06-28 04:59:57 [debug]: KeyDownEvent(PageDown, False) handled by ManualInputManager+LocalPlatformActionContainer.
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #9 PM Channel 1 displayed
[runtime] 2022-06-28 04:59:57 [verbose]: 🔸 Step #10 Press document next keys
[runtime] 2022-06-28 04:59:57 [verbose]: Current channel changed to test user 218
```
2022-06-28 14:00:30 +09:00
Bartłomiej Dach
1a0228415d
Wait for and dismiss notification in editor navigation test 2022-06-27 22:29:47 +02:00
Dean Herbert
569fde4b47 Add messages to all InvalidOperationExceptions
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
Dean Herbert
f355c3a3c9
Merge pull request #18864 from peppy/fix-realm-audio-track-test-fail
Centralise and harden editor-ready-for-use check
2022-06-27 19:42:49 +09:00
Dan Balasescu
e131101708
Merge pull request #18866 from peppy/fix-storyboard-outro-skip-test-flaky
Fix `TestStoryboardSkipOutro` occasionally failing due to strict timings
2022-06-27 18:33:02 +09:00
Dean Herbert
401d9c1bae Fix TestStoryboardSkipOutro occasionally failing due to strict timings 2022-06-27 17:13:46 +09:00
Dean Herbert
13dcaf82ad Fix chat tests failing 1/10000 runs
31a447fda0/osu.Game/Online/Chat/ChannelManager.cs (L412-L414)

Sigh.
2022-06-27 16:50:10 +09:00
Dean Herbert
5a7d339cc8 Centralise and harden editor-ready-for-use check
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:

```csharp
05:19:07     osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07       Failed TestAddAudioTrack [161 ms]
05:19:07       Error Message:
05:19:07        TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07       Stack Trace:
05:19:07       --TearDown
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07        at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07        at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07        at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07        at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07        at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07        at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07        at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
b70b365411 Ensure files are cleaned up even on test step failure in TestAddAudioTrack 2022-06-27 15:53:05 +09:00
Dan Balasescu
05148d2b98
Merge pull request #18854 from peppy/fix-flaky-editor-navigation-test
Attempt to fix flaky `EditorNavigation` test
2022-06-27 13:58:28 +09:00
Dean Herbert
b5a8889fb8 Attempt to fix flaky EditorNavigation test
Conditionals taken from
f8830c6850/osu.Game/Tests/Visual/EditorTestScene.cs (L61-L62)
where it seemed to resolve other similar cases.
2022-06-27 03:04:50 +09:00
Dean Herbert
cd9eaf215b Attempt to fix flaky PlaylistOverlay test 2022-06-27 02:58:01 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dean Herbert
30eebf3511 Merge branch 'master' into c-sharp-10 2022-06-24 21:22:33 +09:00
Dean Herbert
2c5e5fed6f Add test coverage of star rating and difficulty updating on editor save 2022-06-24 21:02:38 +09:00
Dean Herbert
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
Bartłomiej Dach
489ed5d34d
Rename test method 2022-06-23 18:04:38 +02:00