Dean Herbert
1374738a0d
Add test coverage
2022-07-21 18:20:46 +09: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
9df49db45f
Include bonus/ignore judgements in statistics fill logic
2022-07-21 08:13:09 +03:00
Salman Ahmed
5513a8b6b4
Fix changelog overlay tests failing due to missing CreatedAt
date
2022-07-21 07:21:27 +03:00
Salman Ahmed
3c2a885872
Add test coverage
2022-07-21 06:01:48 +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
d2a3c2594d
Fix inspections
2022-07-20 16:33:52 +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
Dan Balasescu
6c0d7f8099
Merge pull request #19235 from andy840119/remove-nullable-disable-in-the-mods
...
Remove nullable disable annotation in the mods.
2022-07-20 14:39:32 +09:00
Dan Balasescu
ebb9861377
Merge branch 'master' into remove-nullable-disable-in-the-mods
2022-07-20 13:28:28 +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
為什麼
2a83404dbe
Use array.empty instead of null value.
2022-07-19 20:39:41 +08:00
為什麼
ee7e7f2d3a
Mark the property as non-nullable.
2022-07-19 20:39:41 +08:00
為什麼
d9addebc93
Remove the nullable disable annotation in the test project and fix the api broken.
2022-07-19 20:39:41 +08: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
Bartłomiej Dach
ffa9a83a4f
Add own fixed copy of defective Humanizer methods
2022-07-18 21:37:31 +02:00
Dean Herbert
e14e2cca45
Merge pull request #19212 from peppy/fix-audio-equality-fuck
...
Fix audio/background equality not correctly using `BeatmapInfo` local filenames
2022-07-18 19:28:51 +09:00
Dean Herbert
18da9ddfbf
Add test coverage of two beatmaps in same set with different audio files
2022-07-18 17:05:21 +09: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
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
c6b6f41b71
Add test coverage of AudioEquals
2022-07-13 19:41:38 +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
Dan Balasescu
3ca10ac02c
Merge pull request #19063 from Joehuu/fix-samples-cancel-exit
...
Fix editor playing object samples while paused after cancelling exit
2022-07-12 12:51:27 +09:00
Bartłomiej Dach
cca208b3c7
Merge branch 'master' into replay-user-bug-fix
2022-07-11 21:51:09 +02:00
Salman Ahmed
09bfca4e4a
Fix build failing on tests
2022-07-11 21:45:39 +03:00
Dean Herbert
44d2e001ed
Update various dependencies
2022-07-11 20:16:49 +09:00
Joseph Madamba
6220650ea3
Fix dialog overlay not loading in time for headless test
2022-07-11 02:29:56 -07:00
Dean Herbert
958c0fb390
Remove Appveyor.TestLogger
2022-07-11 15:01:16 +09: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
Dan Balasescu
0bc332e90b
Merge pull request #19029 from peppy/fix-skin-import-duplicate
...
Fix skins potentially being duplicated on batch import
2022-07-08 14:18:14 +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
Salman Ahmed
cd4755fbd9
Add test coverage for batch-import path
2022-07-07 18:06:35 +03:00
Dan Balasescu
f109e510ce
Merge branch 'master' into metadata-client
2022-07-07 19:45:52 +09:00
Dan Balasescu
7086779cf4
Merge pull request #19026 from peppy/async-track-operations
...
Use fire-and-forget async operations on global track
2022-07-07 19:45:03 +09:00
Dean Herbert
bf10f2db2e
Add test coverage of nested rollback for good measure
2022-07-07 18:19:01 +09:00
Dean Herbert
ac216d94a8
Fix transaction not being disposed
2022-07-07 18:15:38 +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
79bed0abdf
Merge branch 'realm-nested-writes' into metadata-client
2022-07-07 17:37:06 +09:00
Dean Herbert
5197d0fa9e
Add automatic transaction handling to realm helper methods
2022-07-07 17:36:25 +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
Salman Ahmed
a5b01b8920
Improve asserts in TestSeekPerformsInGameplayTime
to be more descriptive
2022-07-07 01:00:55 +03:00
Dean Herbert
7053a8507b
Merge pull request #18993 from Joehuu/fix-personal-best-delete-context-menu
...
Fix personal best score showing delete option on context menu
2022-07-06 14:53:35 +09:00
Dean Herbert
59d0bac728
Hook up update flow to metadata stream
2022-07-05 21:32:00 +09:00
Joseph Madamba
f1b55d743c
Fix delete local score test having no files
2022-07-04 11:04:20 -07:00
Dean Herbert
64edc6888d
Add test coverage of corrupt realm creating backup
2022-07-04 16:45:23 +09:00
Dan Balasescu
65917fbb99
Merge pull request #18990 from andy840119/remove-nullable-disable-in-the-ruleset-filter
...
Remove nullable disable annotation in the ruleset filter.
2022-07-04 13:46:31 +09:00
andy840119
14ef771290
Remove the nullable disable annotation in the test case.
2022-07-03 21:05:14 +08: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
9b833524c0
Merge branch 'master' into add-realm-blocking-logging
2022-07-02 12:41:36 +03: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
Dean Herbert
4fd47b5fa0
Add more verbose logging to realm blocking process
2022-07-02 12:36:56 +09:00
Dan Balasescu
6644f9a72a
Fix completely incorrect test
2022-07-01 21:14:06 +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
Salman Ahmed
3bca439c4f
Merge branch 'master' into more-placeholder-suggestions
2022-07-01 10:52:32 +03: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
Dan Balasescu
409224560f
Merge pull request #18874 from peppy/realm-fix-async-write-after-disposal
...
Ensure all async writes are completed before realm is disposed
2022-07-01 15:29:01 +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
andy840119
d94f700ab1
Remove the nullable disable annotate in the test project.
2022-06-30 23:06:49 +08:00
Dean Herbert
447b496eff
Merge branch 'master' into realm-fix-async-write-after-disposal
2022-06-30 19:07:15 +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
Dan Balasescu
5a346edc63
Merge pull request #18951 from peppy/fix-realm-missing-transaction-rollback
...
Fix `PerformWrite` not rolling back transaction on exception
2022-06-30 17:17:56 +09:00
Dean Herbert
98938821e5
Merge branch 'master' into beatmap-update-flow
2022-06-30 16:44:17 +09:00
Dean Herbert
10934450cc
Fix directory cleanup occurring too early during realm tests
2022-06-30 16:02:46 +09:00
Dean Herbert
0abb400f64
Add reproduction of transaction not being exited correctly
2022-06-30 15:15:09 +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
Dean Herbert
a3b4a515fc
Merge branch 'master' into realm-fix-async-write-after-disposal
2022-06-29 22:39:05 +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
Dean Herbert
d64959ad0c
Add test coverage of async writes during a blocking operation
2022-06-28 17:07:49 +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 InvalidOperationException
s
...
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
Dan Balasescu
396e7fc166
Merge pull request #18862 from peppy/empty-beatmap-file-fix-2
...
Fix second case of empty beatmaps being reported to sentry as errors
2022-06-27 20:37:57 +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
Dean Herbert
6203885040
Add test coverage of realm async writes
2022-06-27 19:38:14 +09:00
Dean Herbert
1fc4fa6820
Remove unnecessary Task.Run
workaround in tests
2022-06-27 19:21:05 +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
5af1106fa5
Remove unused using statement
2022-06-27 18:04:52 +09:00
Dean Herbert
401d9c1bae
Fix TestStoryboardSkipOutro
occasionally failing due to strict timings
2022-06-27 17:13:46 +09:00
Dean Herbert
8c3c1f095e
Update rollback test expectations
...
I can't find a better way to do this. It's very hard to trigger an
actual failure in the import process these days. For now I've just made
this work with the new assumptions. May be worth removing the test in
the future if this ever backfires.
2022-06-27 17:04:35 +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
06d59b717c
Move beatmap processing tasks to new BeatmapUpdater
class
2022-06-24 21:02:37 +09:00
Bartłomiej Dach
26c5b59f6d
Replace usages of string.To{Lower,Upper}()
2022-06-24 11:57:45 +02:00
Dan Balasescu
c7e92f46f4
Merge pull request #18819 from peppy/difficulty-icon-refactor-pass
...
Refactor difficulty icons to not suck
2022-06-24 17:50:50 +09:00
Dean Herbert
8912f07745
Merge branch 'master' into difficulty-icon-refactor-pass
2022-06-24 16:34:35 +09:00
Dean Herbert
545c04aaf5
Fix dangerous File.Copy
causing intermittent realm migration test failures
...
Resolves an issue I've been able to locally reproduce on windows.
Basically, the `File.Copy` would begin while realm was blocking. The
"restore" operation is posted to the `SynchronizationContext` to run on
next update call, but in the mean time the copy would begin, causing a
conflict of interest.
Very dangerous. Only really noticeable on windows.
2022-06-24 16:18:56 +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
Gabe Livengood
454eff43c5
publicity -> accesstype
2022-06-23 11:40:25 -04:00
Gabe Livengood
9a15adbfff
add an all option to publicity filter
2022-06-23 11:24:28 -04:00
Gabe Livengood
2def6d809b
refactor to use enum dropdown
2022-06-23 11:02:27 -04:00
Dean Herbert
ef258122d2
Move GetDifficultyRating
helper method to StarDifficulty
2022-06-23 19:51:58 +09:00
Dean Herbert
01da6f20b3
Tidy up all remaining usages
2022-06-23 19:27:35 +09:00
Dean Herbert
7ef8b7df5f
Add timeout for all ManualResetEventSlim.Wait
invocations
...
Timeout values were taken as best-guesses of upper values we'd expect
from sane execution.
2022-06-23 14:46:00 +09:00
Gabe Livengood
a03cfbc2d4
add test coverage
2022-06-22 17:01:42 -04:00
Dean Herbert
97fcf8cec9
Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo
2022-06-23 04:02:24 +09:00
Bartłomiej Dach
a9f6eb0293
Add test coverage for new intended behaviour of sequential hotkey style
2022-06-21 15:18:37 +02:00
Bartłomiej Dach
a996325e19
Add test coverage for filter handling in classic style
2022-06-21 15:00:39 +02:00
Bartłomiej Dach
da1814e7c3
Restructure everything to fix free mod overlay issue
2022-06-21 14:48:41 +02:00
Bartłomiej Dach
143c8e8da6
Add test scene for desired classic selection behaviour
2022-06-21 13:35:00 +02:00
Bartłomiej Dach
658f5341c7
Set up flow for switching between hotkey styles
2022-06-21 13:34:58 +02:00
Bartłomiej Dach
73124d2b1f
Encapsulate mod hotkey selection logic in strategy pattern
2022-06-21 12:49:01 +02: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
Bartłomiej Dach
b0b3ea42cc
Remove null default value in ImportSkinTest
helper method
2022-06-20 10:44:14 +02:00
Dan Balasescu
c402e90598
Merge pull request #18777 from peppy/output-directory-on-import-failure
...
Silence exception and provide more log output when import fails due to empty `.osu` files
2022-06-20 17:36:21 +09:00
Dan Balasescu
e0c82d11ab
Convert == usages to ReferenceEquals
2022-06-20 16:56:19 +09:00
Dean Herbert
e82d948acc
Add test coverage of import throwing when no valid .osu
files are found
2022-06-20 16:06:22 +09:00
Dean Herbert
92f1a2958c
Rename Import(TModel)
to ImportModel
to differentiate from other import methods
2022-06-20 15:18:07 +09:00
Dean Herbert
a6c8a832aa
Remove Import(ArchiveReader)
and redirect existing usages to Import(ImportTask)
2022-06-20 15:14:57 +09: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