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

7233 Commits

Author SHA1 Message Date
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
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
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
Dan Balasescu
e0c82d11ab Convert == usages to ReferenceEquals 2022-06-20 16:56:19 +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
Gabe Livengood
2b0e82be40
add test coverage 2022-06-19 14:35:05 -04:00
Bartłomiej Dach
def87ed782
Add failing test for editor gameplay test using wrong ruleset 2022-06-19 19:28:35 +02:00
Salman Ahmed
47ce087694 Actually click the gameplay scene button than TriggerClick 2022-06-18 18:32:02 +03:00
Bartłomiej Dach
f6a3047596
Merge branch 'master' into editor-metadata-name-unification 2022-06-18 10:22:52 +02:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Salman Ahmed
42378dbb88 Improve test coverage to ensure volume is unaffected when mouse is away 2022-06-16 20:22:57 +03:00
Salman Ahmed
47d0ecf5e8 Merge branch 'master' into editor-metadata-name-unification 2022-06-16 18:53:23 +03:00
Bartłomiej Dach
9c4f6d2ce0
Merge branch 'master' into first-run-setup-notification-interruption 2022-06-16 15:14:40 +02:00
Salman Ahmed
2c35b1404b Use FileInfo as current bindable type 2022-06-15 19:29:09 +03:00
Salman Ahmed
387c54c252 Ensure notification is displayed after first-run setup is hidden 2022-06-15 18:13:24 +03:00
Dean Herbert
584345a97e
Merge pull request #18693 from frenzibyte/toolbar-volume-control
Add basic volume control support in toolbar music button
2022-06-15 17:50:10 +09:00
Dean Herbert
87bf53485a
Merge pull request #18649 from frenzibyte/selection-context-outside-bounds
Fix context menus not appearing when clicking outside of editor playfield's bounds
2022-06-15 17:08:09 +09:00
Dean Herbert
873806c2ea Add keyboard adjustment support 2022-06-15 15:58:22 +09:00
Salman Ahmed
f3f0960335 Use unified filename for background and track during editor import 2022-06-15 09:02:48 +03:00
Salman Ahmed
850afcb1c3 Add failing test case 2022-06-15 05:43:39 +03:00
Salman Ahmed
1171d44ad9 Add failing test case 2022-06-15 03:37:04 +03:00
Salman Ahmed
36599d1174
Merge branch 'master' into fix-hit-error-when-not-visible 2022-06-14 22:47:11 +03:00
Salman Ahmed
7f23677972 Add volume control support via toolbar music button 2022-06-14 22:15:12 +03:00
Salman Ahmed
6fe5cacd3c Fix hot reload crashing toolbar test scene 2022-06-14 22:15:12 +03:00
Salman Ahmed
cd74f22e12 Add failing test case 2022-06-14 19:10:13 +03:00
Dean Herbert
0147a8ecee Add test coverage of HUD components still getting updated when hidden 2022-06-14 18:35:49 +09:00
Dean Herbert
f997886142 Add scrolling gameplay visualisation mode to latency certifier 2022-06-13 17:18:32 +09:00
Dean Herbert
17eaf7bb5c Add failing test coverage showing hit meters don't update when not visible 2022-06-13 16:36:22 +09:00
Salman Ahmed
20e7f32fd9 Improve test case to work in headless 2022-06-12 17:53:10 +03:00
Salman Ahmed
038021f682 Add failing test case 2022-06-11 20:52:25 +03:00
Salman Ahmed
5b3b9a2cd3 Add test coverage for "simple" mode 2022-06-11 16:21:22 +03:00
Dean Herbert
8d53ed64a3 Fix mode cycling and add test coverage 2022-06-11 21:36:43 +09:00
Joseph Madamba
d6b9f385c1 Add failing play button by touch input test 2022-06-10 22:03:51 -07:00
Dean Herbert
096d6df868 Fix regression in testing and setting logic 2022-06-10 20:33:21 +09:00
Dean Herbert
d46739ff0b Add circle gameplay test coverage 2022-06-10 19:42:25 +09:00
Dan Balasescu
e5d6dc1ba5
Merge pull request #18606 from peppy/latency-comparer
Add latency certifier system
2022-06-10 19:41:44 +09:00
Dean Herbert
936b38e0c5 Reduce test coverage to a point where headless tests will run correctly 2022-06-10 16:13:53 +09:00
Dean Herbert
e0644f2726 Simplify flow of progression to be linear 2022-06-10 15:19:10 +09:00
Dan Balasescu
c9dfffbc0e
Merge pull request #18619 from peppy/fix-collection-performance
Fix performance overhead of large collections
2022-06-10 15:01:31 +09:00
Dean Herbert
7d86010903 Fix test regression 2022-06-10 14:41:22 +09:00
Dean Herbert
4a5e86e451 Rename Beatmaps to BeatmapHashes for clarity 2022-06-10 14:03:51 +09:00
Dan Balasescu
bc7262a3dd
Merge pull request #18627 from Joehuu/always-show-mod-selector-beatmap-info
Always show mod selector on beatmap info leaderboards regardless of supporter
2022-06-09 18:18:12 +09:00
Dean Herbert
8879c59b36
Merge pull request #18623 from LittleEndu/new-me-recommender
Use new own profile statistics in difficulty recommender
2022-06-09 11:11:21 +09:00
Joseph Madamba
5c138de446 Add failing mod selector visibility test 2022-06-08 13:22:49 -07:00
Joseph Madamba
c6264d5b3d Split beatmap set overlay tests to online and offline 2022-06-08 13:21:23 -07:00
Endrik Tombak
bf67b35ade Use new own profile statistics in difficulty recommender 2022-06-08 17:44:57 +03:00
Dean Herbert
c661f2b059 Ensure ChannelManager has access to API from point of construction
Closes https://github.com/ppy/osu/issues/18451.
2022-06-08 19:15:23 +09:00
Dean Herbert
42cd7d9e6e Change CollectionManager to only store MD5 hashes instead of full BeatmapInfo 2022-06-08 18:23:09 +09:00
Dan Balasescu
c43670fcd9
Merge pull request #18603 from peppy/fix-import-dialog
Add placeholder when no results are visible at song select
2022-06-08 15:22:31 +09:00
Dean Herbert
3b46787e06
Merge pull request #18496 from smoogipoo/multiplayer-leaderboard-user-mods-2
Support mod/ruleset combinations in multiplayer gameplay leaderboard
2022-06-08 14:58:13 +09:00
Dean Herbert
eee79c9531
Merge pull request #18610 from jai-x/refactor-chat-line
Refactor `ChatLine` and fix `DrawableChannel` flow padding
2022-06-08 13:54:53 +09:00
Dean Herbert
cd649f7d97
Merge branch 'master' into multiplayer-leaderboard-user-mods-2 2022-06-08 13:39:42 +09:00
Salman Ahmed
c69d53df00 Add failing test case 2022-06-08 04:29:50 +03:00
Jai Sharma
2f635fa854 Refactor ChatLine and fix DrawableChannel flow padding
Refactors `ChatLine` component to use more sensible override properties
and layout using grid container. Moves creation of username component
into its own method to simplify BDL.

Updates padding of base `DrawableChannel` flow padding.

Removes usage of `ChatOverlayDrawableChannel` since it's overrides are
no longer needed.

Updates usage of `StandAloneChatDisplay` to use new override properties
of `DrawableChannel`.
2022-06-07 22:35:45 +01:00
Dean Herbert
b924aa3296 Fix tests failing when run headless 2022-06-08 00:36:19 +09:00
Dean Herbert
9da99a0ddf Rename to latency certifier 2022-06-07 23:34:55 +09:00
Dean Herbert
95dea00725 Tidy up code and namespaces 2022-06-07 23:10:08 +09:00
Dean Herbert
058760253a Add test coverage of certification flow 2022-06-07 23:02:15 +09:00
Dean Herbert
0adeccbf03 Add full latency testing flow 2022-06-07 17:28:31 +09:00
Dean Herbert
430bacf917 Add initial layout of comparison screens 2022-06-07 17:28:31 +09:00
Dean Herbert
0d32c94104 Add initial implementation of beatmap carousel no-results-placeholder 2022-06-07 17:25:06 +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
Henry Lin
ef5d601f67 Fix difficulty name overflow in score panel 2022-06-07 12:05:03 +08:00
Dean Herbert
734636299e
Merge pull request #18567 from jai-x/update-dayseparator
Update `DaySeparator` to use new design throughout
2022-06-06 19:15:43 +09:00
Dan Balasescu
b897e1464f
Merge pull request #18462 from frenzibyte/fix-timeline-zooming
Fix timeline objects disappearing prematurely on wide-screens
2022-06-05 11:49:44 +09:00
Jai Sharma
c0aaeff2b3 Update DaySeparator to use new design throughout
Moves `DaySeparator` chat component to it's own file and update it to
match new chat design. Makes use of several virtual attributes that can
be overridden to update spacing and layout in other usage contexts.

Remove redundant usage of `ChatOverlayDaySeparator`, since the new
design is now part of the base class.

Create `StandAloneDaySeparator` to use in `StandAloneChatDisplay` which
overrides attributes to match correct spacing and layout for its design.

Ensure that `DrawableChannel.CreateDaySeparator` returns type of
`DaySeparator` instead of `Drawable`.
2022-06-04 18:02:14 +01:00
Dan Balasescu
1c738e22ae
Merge pull request #18523 from peppy/tap-button
Add tap for BPM button
2022-06-03 18:11:10 +09:00
Salman Ahmed
588151f48b Add new failing test coverage 2022-06-03 02:34:10 +03:00
Salman Ahmed
ca68751fdc Update test to match expectation 2022-06-03 02:22:16 +03:00
Salman Ahmed
8471b24659 Merge branch 'master' into fix-timeline-zooming 2022-06-03 02:00:09 +03:00
Bartłomiej Dach
6f1437e73d
Fix compilation failure due not applying rename fully 2022-06-02 21:18:09 +02:00
Bartłomiej Dach
59ffc8b08e
Merge branch 'master' into multiplayer-leaderboard-user-mods-2 2022-06-02 20:45:10 +02:00
Dean Herbert
c42485cea9 Fix test button references 2022-06-02 17:29:45 +09:00
Dean Herbert
5adbf85654
Merge pull request #18422 from smoogipoo/detect-exclusive-fullscreen
Detect exclusive fullscreen on Windows
2022-06-02 15:13:02 +09:00
Dan Balasescu
793dfe2bc8 Mark players as playing 2022-06-02 14:22:45 +09:00
Dan Balasescu
600da89f72 Fix disposing previous leaderboard too late 2022-06-02 14:22:15 +09:00
Dean Herbert
d12f6ea221 Add basics of tap button 2022-06-02 11:57:06 +09:00
Dean Herbert
24ce10ed6f
Merge branch 'master' into fix-dummmy-api-request-firing-2 2022-06-02 07:47:21 +09:00
Dean Herbert
6b297bc6ed
Merge pull request #18502 from peppy/editor-timing-follow-current-time
Add automatic control point tracking to the timing screen
2022-06-02 07:37:03 +09:00
Dean Herbert
42598ce22a Refactor warning to notice in method names and usages 2022-06-01 16:51:58 +09:00
Dean Herbert
a940676fc2 Add adjustment buttons 2022-05-31 21:31:20 +09:00
Dan Balasescu
13d85b8cc7 Merge branch 'scoreprocessor-cleanup' into multiplayer-leaderboard-user-mods-2 2022-05-31 19:53:37 +09:00
Dean Herbert
9746cbb161 Ensure rows have loaded before attempting to click them 2022-05-31 15:54:07 +09:00
Dean Herbert
cf5da44492 Add automatic control point tracking to the timing screen 2022-05-31 15:00:30 +09:00
Dean Herbert
53844d3df1 Refactor settings item "warning" text to allow non-warning state 2022-05-31 14:01:42 +09:00
Dean Herbert
c892aed797 Merge branch 'master' into fix-dummmy-api-request-firing-2 2022-05-31 12:23:26 +09:00
Dean Herbert
1d5a156c15
Merge pull request #18427 from sw1tchbl4d3r/currently_playing_search
Add search bar for the `CurrentlyPlayingDisplay`
2022-05-30 23:03:00 +09:00
Dean Herbert
17174a7b09 Ensure some results have been loaded in playlist results screen tests
Basically, the failing delayed test would fire two web requests during
the proceedings. In unfortunate timing, the first would succeed and the
test would think "everything is okay", but the actual request loading
results has not yet run.

This check ensures *something* is loaded, which seems to be enough to
make things reliable.
2022-05-30 19:29:16 +09:00
Dan Balasescu
22d998dc2a Use new score processor in MultiplayerGameplayLeaderboard 2022-05-30 19:26:26 +09:00
Dean Herbert
0981d415a1 Select correct channel regardless of load order 2022-05-30 17:57:48 +09:00
Dean Herbert
f65d2db77f Remove "V2" suffix from ChatOverlay components 2022-05-30 17:54:09 +09:00
Dean Herbert
9e678101cf
Merge pull request #18442 from jai-x/new-chat-announce-channel
Display Announce type channels separately in new chat overlay
2022-05-30 16:53:15 +09:00
Dean Herbert
5478ac21ea
Merge branch 'master' into currently_playing_search 2022-05-30 16:48:53 +09:00
Dan Balasescu
be998cdb0a
Merge pull request #18477 from frenzibyte/fix-timeline-context-menu
Fix context menu no longer opening for hitobjects in timeline
2022-05-30 11:49:06 +09:00
Dan Balasescu
779ec7d9db
Merge pull request #18487 from jai-x/remove-old-chat
Remove old chat overlay components
2022-05-30 11:04:05 +09:00
Dean Herbert
03deb336b2 Fix some more chat tests failing intermittently
```
TearDown : osu.Framework.Testing.Drawables.Steps.AssertButton+TracedException : Channel 1 ready
--TearDown
   at osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
   at osu.Framework.Threading.Scheduler.Update()
   at osu.Framework.Graphics.Drawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
   at osu.Framework.Platform.GameHost.UpdateFrame()
   at osu.Framework.Threading.GameThread.processFrame()
   at osu.Framework.Threading.GameThread.RunSingleFrame()
   at osu.Framework.Threading.GameThread.<createThread>g__runWork|66_0()
   at System.Threading.Thread.StartHelper.Callback(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)

-----

One or more child tests had errors
  Exception doesn't have a stacktrace

[runtime] 2022-05-29 19:29:09 [verbose]: 💨 Class: TestSceneChatOverlayV2
[runtime] 2022-05-29 19:29:09 [verbose]: 🔶 Test:  TestSlowLoadingChannel
[runtime] 2022-05-29 19:29:09 [verbose]: Chat is now polling every 60000 ms
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #1 Setup request handler
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #2 Add test channels
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #3 Show overlay (slow-loading)
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #4 Join channel 1
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #5 Select channel 1
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #6 Channel 1 loading
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #7 Join channel 2
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #8 Select channel 2
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #9 Channel 2 loading
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #10 Finish channel 1 load
[runtime] 2022-05-29 19:29:09 [verbose]: 🔸 Step #11 Channel 1 ready
[runtime] 2022-05-29 19:29:09 [verbose]: 💥 Failed
[runtime] 2022-05-29 19:29:09 [verbose]:  Currently loading components (2)
[runtime] 2022-05-29 19:29:09 [verbose]: TestSceneChatOverlayV2+SlowLoadingDrawableChannel
[runtime] 2022-05-29 19:29:09 [verbose]: - thread: ThreadedTaskScheduler (LoadComponentsAsync (standard))
[runtime] 2022-05-29 19:29:09 [verbose]: - state:  Loading
[runtime] 2022-05-29 19:29:09 [verbose]: TestSceneChatOverlayV2+SlowLoadingDrawableChannel
[runtime] 2022-05-29 19:29:09 [verbose]: - thread: ThreadedTaskScheduler (LoadComponentsAsync (standard))
[runtime] 2022-05-29 19:29:09 [verbose]: - state:  Ready
[runtime] 2022-05-29 19:29:09 [verbose]: 🧵 Task schedulers
[runtime] 2022-05-29 19:29:09 [verbose]: LoadComponentsAsync (standard) concurrency:4 running:1 pending:0
[runtime] 2022-05-29 19:29:09 [verbose]: LoadComponentsAsync (long load) concurrency:4 running:0 pending:0
[runtime] 2022-05-29 19:29:09 [verbose]: 🎱 Thread pool
[runtime] 2022-05-29 19:29:09 [verbose]: worker:          min 32     max 32,767 available 32,765
[runtime] 2022-05-29 19:29:09 [verbose]: completion:      min 32     max 1,000  available 1,000

```
2022-05-30 04:34:10 +09:00
Jai Sharma
8f596520f3 Remove old chat overlay components 2022-05-29 20:08:43 +01:00
Bartłomiej Dach
f9f8a32380
Merge branch 'master' into new-chat-announce-channel 2022-05-29 18:55:43 +02:00
Dean Herbert
caee9e67b6 Centralise DrawableChannel checks and account for async load delays 2022-05-29 23:16:26 +09:00
Bartłomiej Dach
18f75d8c58
Remove redundant initialiser 2022-05-29 16:06:01 +02:00
Dean Herbert
c078c06902 Fix unsafe config fetching 2022-05-29 22:55:53 +09:00
Salman Ahmed
12d5b355e4 Add failing test coverage 2022-05-29 15:23:32 +03:00
Salman Ahmed
0349d92f8b Add failing test case 2022-05-28 17:45:00 +03:00
Bartłomiej Dach
a8e1c5ba87
Fix remaining cases of incorrect GameplayState construction in tests
Manual attempts to initialise replaced by a new `TestGameplayState`
helper for ease of use.
2022-05-28 15:23:29 +02:00
Bartłomiej Dach
dcf3d76954
Fix unobserved exceptions due to using unconverted beatmap
`TestSceneBeatmapSkinFallbacks` was locally caching a `GameplayState`
instance to fulfill dependencies of a
`SkinnableTargetComponentsContainer`. However, it was doing so using
`new TestBeatmap()`, which is a raw decoded beatmap that hasn't been
converted to any ruleset yet, which was causing failures in
`BeatmapDifficultyCache.GetTimedDifficultyAttributesAsync()` as that
method is expecting to receive a post-conversion, ready-for-gameplay
beatmap.

Resolve by proxying forward dependency instances from the
already-known-to-be-working `actualComponentsContainer`.
2022-05-28 15:23:29 +02:00
Bartłomiej Dach
e18fec3d89
Fix unobserved exceptions due to unimplemented beatmap converter
`TestSceneStatisticsPanel` intends to check the operation of statistics
panels using dummy ruleset classes. However, `StatisticsPanel` relies on
being able to retrieve the playable beatmap, which requires a converter.
One was not provided by the dummy rulesets, therefore the retrieval
would fail with an unobserved exception.

To fix, add a barebones converter implementation that is enough for the
test to pass.
2022-05-28 14:10:57 +02:00
Jai Sharma
320b6ca631 Display Announce type channels separately in new chat overlay 2022-05-27 16:18:22 +01:00
sw1tchbl4d3
e2951d70d1 Address code style issues 2022-05-27 16:38:54 +02:00
Dean Herbert
2f57849bcb Fix unexpected assertion failure 2022-05-27 20:59:00 +09:00
Dean Herbert
ef47b380c6 Add featured artist playlist category 2022-05-27 20:18:46 +09:00
Joseph Madamba
125dda716d Add failing scores container visibility test 2022-05-26 19:46:42 -07:00
Joseph Madamba
0cdefbc6df Add failing beatmap info status test 2022-05-26 17:52:17 -07:00
Bartłomiej Dach
818b344c2b
Merge branch 'master' into editor-bottom-bar-new-design 2022-05-26 19:26:35 +02:00
Dean Herbert
b2607196b8 Merge branch 'master' into new-chat-integrate 2022-05-26 18:38:26 +09:00
Dean Herbert
fb586fe0b2 Merge branch 'master' into editor-bottom-bar-new-design 2022-05-26 18:32:28 +09:00
Dean Herbert
93c94b8ea0 Fix test caching woes 2022-05-26 18:30:37 +09:00
Bartłomiej Dach
af1d4d3aee
Use more proper button subtypes in tests 2022-05-25 23:06:12 +02:00
Bartłomiej Dach
4f8b6b52ba
Add failing test coverage for select/deselect all enable behaviour 2022-05-25 21:49:31 +02:00
Dean Herbert
acd554d918 Update time info and add bpm 2022-05-25 23:54:59 +09:00
Dean Herbert
91834f0319 Fix missing colour dependency in menu bar test scene 2022-05-25 22:56:47 +09:00
Dan Balasescu
fb22801afb
Merge pull request #18388 from peppy/editor-timing-waveforms
Add waveform comparison view to editor timing screen
2022-05-25 20:15:25 +09:00
Dan Balasescu
79c8752bb4
Merge pull request #18408 from peppy/first-run-ui-scale-first
Move UI scale setup to the beginning of the first run setup
2022-05-25 12:56:03 +09:00
Dean Herbert
de5d2df100 Move UI scale setup to the beginning of the first run setup 2022-05-25 12:19:26 +09:00
Dan Balasescu
f468d1eb16
Merge branch 'master' into editor-tidy-up 2022-05-25 11:58:34 +09:00
Jai Sharma
f6810d3f59 Add keyboard shortcuts to ChatOverlayV2 with tests 2022-05-24 23:05:25 +01:00
Bartłomiej Dach
5f6baaca13
Merge branch 'master' into editor-beat-divisor-size-static 2022-05-24 23:17:02 +02:00
Bartłomiej Dach
c33aee17b0
Cache some more OverlayColourProviders to fix tests 2022-05-24 23:14:28 +02:00
Dean Herbert
0bcf8c846c Change editor colour scheme to aquamarine 2022-05-24 18:43:22 +09:00
Dean Herbert
0471f35d84 Merge branch 'editor-beat-divisor-size-static' into editor-combined 2022-05-24 18:43:00 +09:00
Dean Herbert
33fd1555f2 Update TestSceneRoundedButton with new colour assertions 2022-05-24 18:42:45 +09:00
Dean Herbert
bb82abe48d Update test to use new triangle type resolution 2022-05-24 18:38:08 +09:00
Dean Herbert
3c2e57bf00 Update BeatDivisorControl to better match new designs and metrics 2022-05-24 18:26:01 +09:00
Dean Herbert
4bcf15f632 Refactor test to allow waveform testing 2022-05-24 14:36:44 +09:00
Bartłomiej Dach
4cf8df1628
Fix test inteference from TestOverlayClosing 2022-05-23 23:58:12 +02:00
Bartłomiej Dach
14f14b4311
Add failing test case for back button behaviour in song select 2022-05-23 23:37:05 +02:00
Jai Sharma
60b10fca4e Remove redundant caching of overlays in ChatLink test 2022-05-23 21:02:50 +01:00
Jai Sharma
606f3b2bd1 Use ChatOverlayV2 in screen navigation tests 2022-05-23 21:02:50 +01:00
Jai Sharma
d2a49ca266 Use ChatOverlayV2 in message notifier and tests 2022-05-23 21:02:50 +01:00
Jai Sharma
58d39734d0 Integrate ChatOverlayV2 into main game 2022-05-23 21:02:47 +01:00
Dean Herbert
7d93778355
Merge pull request #18290 from jai-x/new-chat-remove-selector-item
Use dummy channel to show selector and remove `ChannelListSelector`
2022-05-23 15:49:00 +09:00
Dan Balasescu
7d0470794b
Merge pull request #18353 from frenzibyte/spectator-catch-up-work-alt
Disallow multi-spectator player clocks from being started/stopped externally
2022-05-23 13:59:54 +09:00
Dan Balasescu
e3c1c78b17
Merge pull request #18348 from maromalo/mod-key-multiplayer
Add toggle mod hotkey support in multiplayer room
2022-05-23 13:45:02 +09:00
Dan Balasescu
f111d33b25
Merge pull request #18339 from peppy/editor-timing
Add first pieces of editor timing UI
2022-05-23 11:12:22 +09:00
Bartłomiej Dach
0bef2ca752
Adjust test slightly
* Import `osuTK.Input` instead of using full qualified name
* Use some more straightforward assertions
2022-05-22 19:27:20 +02:00
Dean Herbert
eabf578282 Use interface to convey beat sync information 2022-05-22 22:44:54 +09:00
maromalo
fc25d248ad Test coverage + no virtual 2022-05-21 18:16:29 -03:00
Jai Sharma
efae934e01 Fix slow loading channel test 2022-05-21 17:35:31 +01:00
Jai Sharma
fb06b7658b Merge branch 'master' into new-chat-remove-selector-item 2022-05-21 17:30:06 +01:00
Salman Ahmed
d73afcaf48 Fix existing test coverage false-passing
Also improves general test coverage to test more realisticly, in order
to produce accurate results.
2022-05-21 17:12:04 +03:00
Dean Herbert
982856a8b2 Merge branch 'localisable-filter-items' into update-framework 2022-05-21 15:17:51 +09:00
Salman Ahmed
1f17652c1d Fix test failure due to async-loading of content 2022-05-20 19:08:41 +03:00
Salman Ahmed
84a3cee452 Apply rate multiplier outside BPM rounding 2022-05-20 18:04:12 +03:00
Dean Herbert
4633eed78c Merge branch 'master' into localisable-filter-items 2022-05-20 23:55:16 +09:00
Salman Ahmed
de8aedf348 Add failing test case 2022-05-20 17:53:28 +03:00
Dean Herbert
2b3ec53fed Merge branch 'safe-file-writes' into localisable-filter-items 2022-05-20 23:51:24 +09:00
Dean Herbert
c3bfbe8880 Allow BeatSyncedContainer to prefer EditorBeatmap when available 2022-05-20 23:24:57 +09:00
Dean Herbert
2e21d75b10 Move metronome into own class and rename to avoid conflict with mod sounds 2022-05-20 17:30:04 +09:00
Dean Herbert
42179568f3 Initial animation pass on metronome 2022-05-20 17:30:04 +09:00
Dean Herbert
ce7be940e2 Setup basics for control and test 2022-05-20 17:30:04 +09:00
Dan Balasescu
64a371638e
Merge pull request #18236 from peppy/snap-unification
Add `enum` to snap method as alternative to multiple nested invocations
2022-05-20 11:35:05 +09:00
Dean Herbert
136ecb45e2 Rename dummy channel and move to a nested class inside the ChannelListing itself 2022-05-19 19:26:14 +09:00
Dean Herbert
d187ca2d8c
Merge pull request #18246 from jai-x/new-chat-cache-loaded-channels
Add drawable channel caching to new chat overlay
2022-05-19 15:15:47 +09:00
Salman Ahmed
5d3878a737 Add test coverage for slow-loading channels 2022-05-18 22:58:39 +03:00
Dan Balasescu
49340888c0 Fix compile errors 2022-05-18 10:56:42 +09:00
Dean Herbert
1b7ec1be26 Add basic test coverage of new screen 2022-05-17 18:15:14 +09:00
Dean Herbert
218642c300 Update unsafe file write usages 2022-05-16 18:05:27 +09:00
Jai Sharma
ae5b6c3e10 Use dummy channel to show selector and remove ChannelListSelector
Add dummy channel `DummySelectorChannel` which should be set as the
current channel in the channel manager when the selector in the chat
overlay should be shown.

Refactors the `ChannelListItem` to not show mention pill and close
button when the channel is the dummy selector channel.

Ensure that the `ChannelList` selects the dummy channel on clicking the
selector item.

Removes `ChannelListSelector` as it is no longer needed.

Removes the `setCurrent` parameter from `ChannelManager.JoinChannel`
method as it is no longer needed.
2022-05-15 20:24:49 +01:00
Dean Herbert
328561f5c8
Merge pull request #18263 from frenzibyte/spotlight-beatmap-badge
Add support for "spotlight" label in beatmap overlay/listing
2022-05-15 12:32:20 +09:00
Dean Herbert
b6575c216b Allow selecting all mods at free mod select using ctrl+a 2022-05-15 03:25:14 +09:00
Dean Herbert
282c8aec86
Fix typo in test step
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-05-15 03:09:15 +09:00
Dean Herbert
a759cf2dab Add key binding to deselect all mods
Defaults to `Backspace`.
2022-05-15 02:51:58 +09:00
Salman Ahmed
d5027cdfbd Add FeaturedInSpotlight property to API beatmapsets 2022-05-14 19:46:13 +03:00
Jai Sharma
bd68ffa805 Fix textbox focus test in ChatOverlayV2 2022-05-14 12:16:00 +01:00
Dean Herbert
a346456daf Add test coverage of new traversal keys 2022-05-14 03:01:42 +09:00
Dean Herbert
c0abce918f Add enum to snap method as alternative to mutliple nested invocations 2022-05-12 16:19:07 +09:00
Salman Ahmed
82c4a5fe9f
Merge branch 'master' into new-chat-visibility-behaviour 2022-05-12 09:04:24 +03:00
Dan Balasescu
678cde3310
Merge pull request #18230 from bdach/mod-overlay/data-flow-refactor
Restructure data flow in mod select overlay
2022-05-12 14:40:49 +09:00
Dean Herbert
6ba0760b17
Merge branch 'master' into new-chat-visibility-behaviour 2022-05-12 13:59:35 +09:00
Dan Balasescu
effc92475b
Merge pull request #18227 from frenzibyte/fix-results-screen-test-failure
Fix intermittent test failures in results screen
2022-05-12 11:19:13 +09:00
Jai Sharma
c45e8f619b Update ChannelList test scene 2022-05-11 22:52:25 +01:00
Bartłomiej Dach
7ac6073f13
Fix column test scene to work 2022-05-11 22:31:25 +02:00
Bartłomiej Dach
315c67a316
Add failing test case for ruleset without all mod types 2022-05-11 22:03:41 +02:00
Bartłomiej Dach
9b7ff9f2ee
Rename modSelect{Screen -> Overlay}2 variable 2022-05-11 18:05:09 +02:00
Bartłomiej Dach
62f6caf76d
Rename ModSelect{Screen -> Overlay} test scenes 2022-05-11 18:04:39 +02:00
Salman Ahmed
9d30b490ad Fix intermittent test failures in results screen 2022-05-11 18:28:30 +03:00
Salman Ahmed
d51689e9ae Unfocus textbox when dismissing popover in test scene 2022-05-11 11:25:41 +03:00
Salman Ahmed
f797514bce Add failing test cases 2022-05-11 09:51:59 +03:00
Salman Ahmed
e43ce28ada Remove references of "difficulty point" in sample point test scene
Fat-fingered.
2022-05-11 09:51:09 +03:00
Bartłomiej Dach
76c63f1d0a
Rename ModSelect{Screen -> Overlay} in place of removed old design 2022-05-10 22:56:50 +02:00
Bartłomiej Dach
c4c7556fb2
Make remains of TestSceneModSettings non-visual
As they're not really testing anything visual.
2022-05-10 22:07:26 +02:00
Bartłomiej Dach
33634cba1e
Remove old mod buttons 2022-05-10 21:58:22 +02:00
Bartłomiej Dach
24c59e2f2f
Remove old user mod select overlay 2022-05-10 21:52:17 +02:00
Bartłomiej Dach
4a3447f59f
Remove old free mod select overlay 2022-05-10 21:45:57 +02:00
Bartłomiej Dach
9cfe2cc310
Move TestCustomisableModRuleset out of TestSceneModSettings 2022-05-10 21:43:57 +02:00
Dean Herbert
9aadc274bf Show first run dialog on first run of the game 2022-05-10 18:21:35 +09:00
Salman Ahmed
14a21e9224 Workaround interface mocks in TestSceneFirstRunSetupOverlay breaking with hot reload 2022-05-10 11:41:41 +03:00
Dean Herbert
a5b454edc7 Remove unnecessary DI caching of SentryLogger 2022-05-10 16:09:16 +09:00
Dan Balasescu
886a4815fa
Merge pull request #18180 from frenzibyte/fix-toolbox-double-tap
Fix `SettingsToolboxGroup` not clearing transforms before updating autosize
2022-05-10 13:48:02 +09:00
Salman Ahmed
beb86a7f7c Remove usage of player settings in TestSceneSettingsToolboxGroup 2022-05-09 23:57:27 +03:00
Jai Sharma
ebb64d1f1a Use AddUntilStep to wait for channel to load and become visible 2022-05-09 20:15:43 +01:00
Salman Ahmed
5726cf660f Improve test coverage to use existing ThemeComparisonTestScene 2022-05-09 21:19:34 +03:00
Salman Ahmed
ceb6276d2f Add failing test case 2022-05-09 18:19:29 +03:00
Jai Sharma
9ec8b609a8 Update channel visibility tests to be more correct 2022-05-09 12:11:25 +01:00
Jai Sharma
5f3bea846b Simplify fetching of DrawableChannel 2022-05-09 12:11:25 +01:00
Salman Ahmed
deda1c83e6 Add failing test case 2022-05-09 13:48:51 +03:00
Salman Ahmed
0fe121f48a Move and rename settings toolbox group test scene 2022-05-09 13:25:33 +03:00
Dan Balasescu
a16f2349aa Fix next queued item not selecting after gameplay 2022-05-09 17:55:42 +09:00
Dan Balasescu
e9cc3ab54a
Merge pull request #18164 from Joehuu/fix-exit-dialog-bad-state
Fix popup dialog potentially not clicking last button when dismissed
2022-05-09 17:22:03 +09:00
Salman Ahmed
1677f1d696
Merge branch 'master' into results-screen-scaling 2022-05-09 11:11:55 +03:00
Joseph Madamba
bc839be4d8 Add failing rapid back button exit test 2022-05-08 14:40:29 -07:00
Salman Ahmed
077c77d524 Add method for scaling results screen in tests 2022-05-08 16:00:07 +03:00
Bartłomiej Dach
38c004d734
Add test coverage for hiding mod columns 2022-05-08 14:54:06 +02:00
Bartłomiej Dach
cbd1169495
Move cache declarations of ISamplePlaybackDisabler to interface 2022-05-08 10:38:58 +02:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler to more general namespace 2022-05-08 10:38:58 +02:00
Bartłomiej Dach
bdea6d8654
Add failing test for mod overlay not closing on entering skin editor 2022-05-07 22:47:19 +02:00
Bartłomiej Dach
a3e61fddcb
Rename skin editor scene library test scene to be more general 2022-05-07 22:43:53 +02:00
Bartłomiej Dach
836de49135
Adjust skin editor scene library test for extensibility 2022-05-07 22:43:47 +02:00
Bartłomiej Dach
5d6d7bb324
Fix incorrect assert in multiplayer song select test scene 2022-05-07 13:15:16 +02:00
Bartłomiej Dach
e7e7486a8e
Merge branch 'mod-overlay/back-button' into mod-overlay/integration 2022-05-07 10:59:30 +02:00
Bartłomiej Dach
9d3e67b10d
Update free mod select/deselect all test after back button addition 2022-05-07 10:25:23 +02:00
Bartłomiej Dach
1c029552d7
Add test coverage for mod select back button 2022-05-07 10:23:49 +02:00
Bartłomiej Dach
e1953c484c
Add test coverage for selecting/deselecting all mods on free mod select 2022-05-07 09:50:08 +02:00
Bartłomiej Dach
35c106efaa
Add test coverage for deselecting all mods on user mod select 2022-05-07 09:29:33 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Bartłomiej Dach
380cd1e036
Add test coverage for lack of customisation on free mod select 2022-05-06 21:35:22 +02:00
Salman Ahmed
f222affe88
Merge branch 'master' into fix-toolbox-expansion 2022-05-06 17:54:14 +03:00
Salman Ahmed
144d33f0d2
Merge branch 'master' into distance-snapping-test 2022-05-06 17:29:27 +03:00
Bartłomiej Dach
e527574ede
Merge branch 'master' into fix-toolbox-expansion 2022-05-06 13:47:36 +02:00
Bartłomiej Dach
19297375e2
Update tests to reflect new expected behaviour 2022-05-06 13:47:13 +02:00
Dean Herbert
98eab9668d
Merge pull request #18119 from bdach/mod-overlay/broken-hover
Fix mod panels not hovering correctly after closing customisation area via mouse on new mod select
2022-05-06 20:42:33 +09:00
Dean Herbert
daed42513e Fix outdated test asserts 2022-05-06 18:44:25 +09:00
Bartłomiej Dach
8f217d1e97
Add failing test case for broken hover behaviour 2022-05-06 11:37:50 +02:00
Dean Herbert
32b40bdabf Rename DistanceBetweenTick to be plural 2022-05-06 15:45:36 +09:00
Dean Herbert
060461a431 Add test coverage of multiplayer gameplay exit flow 2022-05-06 15:22:22 +09:00
Jai Sharma
7ffe3b132f Use BindableFloat in chat height tests 2022-05-05 23:13:43 +01: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
d296f78dfe
Replace references to old mod select classes in multiplayer match screen test 2022-05-05 22:16:57 +02:00
Bartłomiej Dach
ecc2805099
Replace references to old mod select classes in match song select test
Also note the change from `songSelect.ChildrenOfType<>()...` to
`this.ChildrenOfType<>()...` - because the new design is registered at
game-level, the mod select is not a child of the song select screen
anymore.
2022-05-05 22:16:57 +02:00
Bartłomiej Dach
199bdb8e7d
Replace reference to old mod select in multiplayer test 2022-05-05 22:16:56 +02:00
Bartłomiej Dach
17c19063f7
Fix user dim test scene accumulating no fail instances in SelectedMods
The old design was apparently somehow tolerant of multiple instances of
the same mod in `SelectedMods`, but the new one is not.

Fix the test, because appending to a list of mods that was getting
modified by previous tests is generally not how tests should be
written.
2022-05-05 22:16:56 +02:00
Bartłomiej Dach
8f65e0e60f
Add failing test coverage for toggling mod overlay with hotkey 2022-05-05 22:16:56 +02:00
Bartłomiej Dach
ac08498f35
Use plum colour scheme in multiplayer to match rest of multiplayer screens 2022-05-05 22:16:54 +02:00
Bartłomiej Dach
407db7ff9d
Replace old mod select overlay with new design 2022-05-05 22:16:54 +02:00
Bartłomiej Dach
8002726c9c
Add test coverage for dismissing customisation area with Escape 2022-05-05 19:17:36 +02:00
Dean Herbert
9d48bb41c9
Merge branch 'master' into new-chat-overlay 2022-05-05 23:12:31 +09:00
Jai Sharma
5657e7f11e Fix chat height saving/loading test 2022-05-05 14:52:03 +01:00
Jai Sharma
9cb52f8879 Add tests for chat height saving/loading 2022-05-05 14:21:26 +01:00
Dean Herbert
5029710de7 Merge branch 'master' into distance-snapping-test 2022-05-05 22:00:40 +09:00
Bartłomiej Dach
a859ca0b89
Merge branch 'master' into playlist-keyboard-traversal 2022-05-05 14:45:58 +02:00
Dan Balasescu
e46f99bdba
Merge branch 'master' into dialog-overlay-thread-woes 2022-05-05 20:57:51 +09:00
Dan Balasescu
39d10487b9
Merge branch 'master' into snapping-tidy-distance 2022-05-05 19:55:55 +09:00
Dean Herbert
e7205d8593 Reset all test data before each test method to avoid channels stuck in joined state 2022-05-05 19:09:56 +09:00
Dean Herbert
4efaa41670
Merge branch 'master' into new-chat-overlay 2022-05-05 18:57:00 +09:00
Salman Ahmed
269e15c167 Add test coverage of distance spacing multiplier working with distance snap grid 2022-05-05 18:49:12 +09:00
Dean Herbert
de9b3d33eb Rename misleading DistanceSpacing variable 2022-05-05 17:08:09 +09:00
Dean Herbert
19cf9dc20b Merge branch 'snapping-tidy-distance' 2022-05-05 16:51:32 +09:00
Dean Herbert
977e6d8a80 Add xmldoc for IDistanceSnapProvider and related properties 2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
Salman Ahmed
a26793cd65 Add missing Test prefix 2022-05-05 06:12:24 +03:00
Salman Ahmed
f28978b856 Handle against playlists which disallow selection
`SelectedItem.Disabled` is also not checked against in the select-via-click flow inside `DrawableRoomPlaylistItem` (only `AllowSelection` is checked).
2022-05-05 05:48:35 +03:00
Dean Herbert
a27fcda9f1 Fix failing tests due to CurrentDialog being unexpectedly not set after Push 2022-05-05 01:52:39 +09:00
Jai Sharma
1a85e1267b Ensure focus is directed to ChatTextBox from ChatOverlay and add tests 2022-05-04 14:43:40 +01:00
Dean Herbert
e920bbd497
Merge pull request #18081 from bdach/mod-overlay/test-coverage-parity
Port test coverage from old mod select overlay to new design
2022-05-04 20:24:50 +09:00
Dean Herbert
cf220f171b Add test coverage of cross-thread transforms if a dialog is pushed too early 2022-05-04 20:23:36 +09:00
Bartłomiej Dach
ec27fa8e85
Add test coverage for keyboard selection 2022-05-04 13:15:10 +02:00
Bartłomiej Dach
6380216263
Nudge click location to avoid placement failures 2022-05-04 11:56:44 +02:00
Bartłomiej Dach
a759e641eb
Enforce composer aspect ratio to avoid depending on ambient window size 2022-05-04 11:56:29 +02:00
Dean Herbert
f899c3e68f Add test coverage of circle placement around editor toolboxes 2022-05-04 17:56:53 +09:00
Huo Yaoyuan
8e96af8ff0 Update indentation to be clearer 2022-05-04 13:43:59 +08:00
Bartłomiej Dach
f5fa41356e
Rewrite mod instance management again to pass tests 2022-05-03 22:31:34 +02:00
Bartłomiej Dach
216dfb7e91
Expand incompatibility test to cover logic more thoroughly 2022-05-03 21:45:40 +02:00
Bartłomiej Dach
970361676b
Fix setting items not creating if mods initially not empty 2022-05-03 21:45:40 +02:00
Bartłomiej Dach
89d8ed8e20
Port existing test coverage 2022-05-03 21:45:39 +02:00
Dean Herbert
4fb66a812f
Merge branch 'master' into sheared-search-textbox 2022-05-03 14:12:59 +09:00
Huo Yaoyuan
5513710b2e Fix IDE0055 2022-05-03 13:09:19 +08:00
Ganendra Afrasya
e6fbb19951 Implement new search textbox design 2022-05-03 11:13:07 +07:00
Dean Herbert
faeefc5e18
Merge pull request #16576 from frenzibyte/osu-distance-spacing
Add "distance spacing" support in editor for osu! ruleset
2022-05-03 12:15:18 +09:00
Dean Herbert
53d65e8215
Merge pull request #18021 from frenzibyte/overlay-ruleset-selector-redesign
Update overlay ruleset selector inline with osu-web design
2022-05-02 17:53:01 +09:00
Jai Sharma
bcce807311 Fix chat command test as reference equality checks on PM channels doesn't seem to to work 2022-05-01 12:20:54 +01:00
Jai Sharma
de393f735f Implement basic layout and behaviour of new chat overlay
Provides initial implementation of new chat overlay in component
`ChatOverlayV2`. Contains only the basic functionality required for
a functioning chat overlay according to the new design with the intent
of added the rest of the functionality in subsequent PRs.

Backports existing tests for the current chat overlay except for ones
testing keyboard shortcuts (since they haven't been added) and tab
closing behaviour (since no tabs).
2022-04-30 23:59:47 +01:00
Dean Herbert
670b51324e Add basic test at top of first run scene to make adjusting UI easier 2022-04-29 23:45:02 +09:00
Dean Herbert
5c04ab18ec
Merge pull request #18011 from frenzibyte/rewind-shift-click
Allow rewinding random in song select with "Shift + Left Click"
2022-04-29 23:10:29 +09:00
Salman Ahmed
55c03dc04d Fix silly mistake in ordering and update test colour scheme 2022-04-29 12:40:46 +03:00
Salman Ahmed
5e19bdbf43 Refactor beatmap ruleset selector test scene 2022-04-29 12:23:02 +03:00
Salman Ahmed
fae8d86e15 Fix regressed profile ruleset selector test scene
Due to the changes in `APIUser`, which change equality to be based on ID.
2022-04-29 12:20:35 +03:00
Salman Ahmed
856ca96b66 Allow right-clicking to rewind on random button 2022-04-29 10:12:24 +03:00
Dean Herbert
1f1845d69b
Merge branch 'master' into multiplayer-force-start-2 2022-04-29 14:45:40 +09:00
Salman Ahmed
fef94d49f4 Revert "Convert data type of DistanceSpacing to float"
This reverts commit 7aaa88cac2.
2022-04-29 08:02:07 +03:00
Dan Balasescu
fc21de8138
Merge pull request #18008 from peppy/add-tutorial
Add first run "beatmaps" screen
2022-04-29 13:10:45 +09:00
Dean Herbert
652e022fd6
Merge pull request #17973 from bdach/mod-overlay/dim-columns-offscreen
Dim offscreen columns on new mod select overlay
2022-04-29 11:55:27 +09:00
Dean Herbert
a75051cd00 Merge branch 'master' into add-tutorial 2022-04-29 11:25:17 +09:00
Salman Ahmed
294340279e Add inputting test coverage 2022-04-29 04:14:09 +03:00
Bartłomiej Dach
96f6c918a8
Merge branch 'master' into first-run-behaviour-screen 2022-04-29 00:55:30 +02:00
Dean Herbert
b902e69634 Update test expectations based on new screen order 2022-04-28 20:16:32 +09:00
Dean Herbert
3c0bdcaf38 Rename screen, add tests and add stable import step 2022-04-28 19:01:21 +09:00
Dean Herbert
58399a5113 Add tutorial download support and improve the visuals "slightly" 2022-04-28 19:01:21 +09:00
Dean Herbert
99d2d7b805 Add very basic implementation of bundled beatmap downloader 2022-04-28 19:01:21 +09:00
Salman Ahmed
7aaa88cac2 Convert data type of DistanceSpacing to float 2022-04-28 10:24:36 +03:00
Salman Ahmed
2e8372fe90 Minor cleanup
Just from reading diff.
2022-04-28 07:14:43 +03:00
Salman Ahmed
66c730c382 Change distance spacing keybind to Ctrl+Alt 2022-04-27 17:11:23 +03:00
Dean Herbert
d0ccd6f895 Merge branch 'master' into first-run-header 2022-04-27 19:26:02 +09:00
Dean Herbert
20a50ddb6e Add missing OverlayColourProvider in test scene 2022-04-27 18:45:40 +09:00
Dean Herbert
18e6629161 Merge branch 'master' into first-run-behaviour-screen 2022-04-27 16:02:57 +09:00
Bartłomiej Dach
a849bfcf60
Rewrite dim test to pass headless
Unfortunately neuters the test a touch, but alas.
2022-04-26 23:11:41 +02:00
Dean Herbert
52a8f3848d Expose font size and add big button test 2022-04-26 18:14:57 +09:00
Salman Ahmed
4638dd97db
Merge branch 'master' into first-run-behaviour-screen 2022-04-26 12:09:32 +03:00
Dean Herbert
6864623bac Add ShearedButton test coverage 2022-04-26 18:03:27 +09:00
Dean Herbert
c52c08fe97 Rename test to increase scope 2022-04-26 17:31:39 +09:00
Dean Herbert
942f4e8ac2 Merge branch 'first-run-show-get-started' into first-run-behaviour-screen 2022-04-26 16:10:16 +09:00
Dean Herbert
d310886c26 Add test coverage of IsPlaying state during fail and pause 2022-04-26 12:09:18 +09:00
Bartłomiej Dach
24a1eb8003
Add test coverage for column dimming behaviour 2022-04-25 23:41:40 +02:00
Dean Herbert
7ac3ba132c Remove unused using statements 2022-04-25 18:55:12 +09:00
Dean Herbert
a0e80cf901 Merge branch 'master' into scene-library-incompatible-mods 2022-04-25 18:54:40 +09:00
Dean Herbert
83970f009c
Merge branch 'master' into settings-filter-regression-fix-2 2022-04-24 17:40:25 +09:00
Dean Herbert
60f513abd9
Merge pull request #17957 from peppy/disable-first-run-temporary
Disable first run screen from appearing on startup until it is more complete
2022-04-24 17:37:17 +09:00
Dean Herbert
d0fee3c212
Merge pull request #17950 from Susko3/ButtonSystem-keys
Allow any key to trigger the osu! cookie in the initial state
2022-04-24 17:30:22 +09:00
Dean Herbert
1b2467d3ed Disable first run screen from appearing on startup until it is more complete 2022-04-24 16:35:41 +09:00
Dean Herbert
a40d140353
Merge pull request #17956 from frenzibyte/sections-container-pagination
Fix page up / down in `SectionsContainer` with fixed header skipping content
2022-04-24 15:36:35 +09:00
Salman Ahmed
70a93c0e7e Move DistanceSpacingMultiplier bindable to its own IDistanceSnapProvider interface 2022-04-24 08:33:00 +03:00
Salman Ahmed
4f8f27a58b Merge branch 'master' into osu-distance-spacing 2022-04-24 05:23:30 +03:00
Salman Ahmed
05736fb84c Add failing test case for navigation via PageUp/PageDown 2022-04-24 01:52:11 +03:00
Salman Ahmed
e8cf4466b0 Make sections container test scene more usable
Head busted the moment I opened this test scene.

Cleaned it up a bit to make it easier to test changes.
2022-04-24 01:52:10 +03:00
Salman Ahmed
60e76d62c1 Add failing test cases 2022-04-23 23:16:06 +03:00
Salman Ahmed
6ab188f8f9 Split skin editor scene library test to own file
Rather than stuffing more random cases to `TestSceneScreenNavigation`.
2022-04-23 23:15:45 +03:00
Salman Ahmed
daadc3fc21 Simplfiy and share notification dimsiss method across test scenes
Might as well inline, but I feel like it will require adding the same
comment across all usages, because just `State.Value = Hidden` in an
until step feels off, dunno.
2022-04-23 23:14:19 +03:00
Susko3
684d88ba75 Add full OsuGame tests
These tests ensure the expected behaviour is not broken in the future.
2022-04-23 19:01:55 +02:00
Susko3
cdfef08846 Add tests for shortcut keys 2022-04-23 18:44:50 +02:00
Dean Herbert
d97dc22e79 Add missing dependencies for behaviour screen test 2022-04-23 21:23:41 +09:00
Bartłomiej Dach
98b7b156c7
Merge branch 'master' into first-run-setup-sheared-overlay 2022-04-23 00:32:07 +02:00
Bartłomiej Dach
e246357b36
Merge branch 'master' into sheared-overlay-container-click-away 2022-04-22 22:26:35 +02:00
Salman Ahmed
5120faa830 Merge branch 'master' into mod-overlay/incompatibility-panels-clickable 2022-04-22 22:19:42 +03:00
Salman Ahmed
2961c383f6 Add failing test case 2022-04-22 20:33:37 +03:00
Dan Balasescu
b293d3923c Merge branch 'master' into multiplayer-force-start-2 2022-04-23 01:03:55 +09:00
Dean Herbert
1caee38768 Add first-run "behaviour" screen to allow users a choice of more familiar UX 2022-04-22 18:06:56 +09:00
Dan Balasescu
b1cf917b49
Merge pull request #17823 from peppy/settings-filter-fixes
Fix incorrect settings state if searching too quickly (during load process)
2022-04-22 16:38:41 +09:00
Dean Herbert
f735d381a7
Merge branch 'master' into mod-overlay/incompatibility-panels-clickable 2022-04-22 16:26:46 +09:00
Dean Herbert
14e17c8b7b Update TestIncompatibilityDisplay in line with new functionality 2022-04-22 16:22:18 +09:00
Dean Herbert
06594ca0c8 Refine assertion to ensure correct section is current, rather than any section 2022-04-22 15:30:12 +09:00
Dean Herbert
27c7864562
Merge pull request #17917 from bdach/mod-overlay/flaky-free-mod-select-test
Fix flaky test in free mod select test scene
2022-04-22 12:54:47 +09:00
Bartłomiej Dach
e9bd87545e
Fix flaky test in free mod select test scene 2022-04-22 00:07:00 +02:00
Bartłomiej Dach
cd898344cb
Add test coverage of new incompatibility behaviour 2022-04-21 23:49:40 +02:00
Bartłomiej Dach
8c6864727e
Merge branch 'master' into first-run-setup 2022-04-21 22:14:57 +02:00
Salman Ahmed
295558b24d
Merge branch 'master' into settings-filter-fixes 2022-04-21 20:06:14 +03:00
Salman Ahmed
6ad10672ee
Merge branch 'master' into update-framework 2022-04-21 19:30:57 +03:00
Dean Herbert
119a81849c Merge branch 'update-framework' into settings-filter-fixes 2022-04-22 00:55:15 +09:00
Dean Herbert
832d37b2c2 Update screen transition events to use new event args 2022-04-22 00:52:44 +09:00
Dan Balasescu
08d250fe58 Rename MatchStarted() -> GameplayStarted() 2022-04-21 22:39:24 +09:00
Dean Herbert
d17c16d904 Merge branch 'master' into first-run-setup 2022-04-21 19:50:26 +09:00
Dean Herbert
f5d24add58 Fix TestSceneSkinnableSound not working under visual tests
oops
2022-04-21 16:49:21 +09:00
Dean Herbert
55270df6fc
Merge pull request #17833 from jai-x/new-chat-channel-list
Implement `ChannelList` for new chat design
2022-04-21 16:34:35 +09:00
Dean Herbert
0b81ae9de2 Convert to using sheared overlay container
Add better click-to-dismiss logic for sheader overlays
2022-04-21 16:28:44 +09:00
Dean Herbert
5c21a55e00 Merge branch 'sheared-overlay-container-click-away' into first-run-setup-sheared-overlay 2022-04-21 16:28:33 +09:00
Dean Herbert
2769d8e8cf Add test coverage of ShearedOverlayContainer 2022-04-21 16:27:27 +09:00
Dean Herbert
7d8cf1bbb6 Merge branch 'master' into first-run-setup 2022-04-21 15:49:39 +09:00
Dean Herbert
5c0e5eb6f4
Merge pull request #17899 from Joehuu/localise-most-strings
Use existing web localisation for most hardcoded strings
2022-04-21 14:48:12 +09:00
Dean Herbert
a9163727db Mark selected channel null in test when selector is activated 2022-04-21 13:44:14 +09:00
Joseph Madamba
0146949ad6 Fix failing string comparison tests 2022-04-20 16:52:24 -07:00
Jai Sharma
5319bce772 Revert DI usage of ChannelSelectorState in favour of directly binding BindableBool SelectorActive 2022-04-20 21:05:33 +01:00
Jai Sharma
e596c9d171 Use Bindable<ChannelSelectorState> to control selector active visibility 2022-04-20 19:12:43 +01:00
Dean Herbert
b722ff8dc5 Merge branch 'master' into mod-overlay/extension-points 2022-04-20 23:17:04 +09:00
Dean Herbert
2906af323a Fix incorrectly written string equality logic 2022-04-20 17:51:08 +09:00
Dean Herbert
1032dc235d Rename PopupScreenTitle to ShearedOverlayHeader 2022-04-20 16:01:15 +09:00
Dean Herbert
7e7fa633f0 Use direct localised string reference in test 2022-04-20 14:51:16 +09:00
Dean Herbert
c562004fe9 Add test coverage of only showing on first run 2022-04-19 17:08:38 +09:00
Dean Herbert
6d534046ff Add keyboard traversal support for first run dialog (and tidy up step traversal logic) 2022-04-19 14:57:15 +09:00
Dean Herbert
a8d32a2061 Add test coverage of notification resume flow 2022-04-19 14:53:01 +09:00
Dean Herbert
5fd64a4c78 Add test coverage to ensure we don't leave any screens in the first run overlay 2022-04-19 14:53:01 +09:00
Dean Herbert
9074eb283d Show a notification instead of blocking exit of wizard 2022-04-19 14:53:01 +09:00
Dean Herbert
fb7dc89503 Ensure wizard returns to initial screen after completion 2022-04-19 14:53:01 +09:00
Dean Herbert
ea52fab5b1 Tidy up dependencies and test naming 2022-04-19 14:53:01 +09:00
Dean Herbert
288f759bb4 Add test coverage of navigation 2022-04-19 14:53:01 +09:00
Dean Herbert
e064f2f23e Improve general layout and allow overlay to be displayed without dependencies for now 2022-04-19 14:53:01 +09:00
Dean Herbert
ae07b2b512 Initial setup 2022-04-19 14:53:01 +09:00
Dean Herbert
83e89b3e80 Add unread count to INotificationOverlay and fix toolbar button DI logic 2022-04-19 11:16:45 +09:00