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
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
fd9902e816
Manual #nullable processing
2022-06-17 16:38:35 +09: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
Dean Herbert
f3984d98e6
Remove RealmArchiveModelManager
from hierarchy
2022-06-16 18:53:13 +09:00
Dean Herbert
1f3e1b2d97
Combine BeatmapManager
and BeatmapModelManager
into one class
2022-06-16 18:07:04 +09:00
Dean Herbert
84dba36cf5
Update usages of BeatmapModelManager
which only require importing to use BeatmapImporter
2022-06-16 17:59:24 +09:00
Salman Ahmed
2c35b1404b
Use FileInfo
as current bindable type
2022-06-15 19:29:09 +03:00
Bartłomiej Dach
665ef5fdcc
Add test coverage for API-incompatible rulesets wrt mods
2022-06-15 17:31:46 +02:00
Bartłomiej Dach
0418d70056
Add test coverage for ignoring null mods returned by rulesets
2022-06-15 17:31:46 +02:00
Salman Ahmed
387c54c252
Ensure notification is displayed after first-run setup is hidden
2022-06-15 18:13:24 +03:00
Dean Herbert
f23ddfe6cc
Move remaining realm classes out of Stores
namespace
2022-06-15 21:56:00 +09: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
080f2859ef
Merge pull request #18689 from peppy/quick-import-only-on-batch
...
Always perform full consistency checks for single imports
2022-06-15 17:06:06 +09:00
Salman Ahmed
dfab8b71f6
Merge branch 'master' into stable-beatmap-recursive-import
2022-06-15 10:06:46 +03:00
Dean Herbert
873806c2ea
Add keyboard adjustment support
2022-06-15 15:58:22 +09:00
Dean Herbert
19543685ff
Merge branch 'master' into quick-import-only-on-batch
2022-06-15 15:27:06 +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
3d638abc52
Fix test files stream not disposed after creation
2022-06-15 08:24:20 +03:00
Salman Ahmed
ee8045d507
Add failing test case
2022-06-15 07:33:21 +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
cac724f436
Re-enable ignored tests that will work again now
2022-06-15 00:51:08 +09:00
Dean Herbert
88d5e074a8
Rename lowPriority
to batchImport
2022-06-15 00:46:00 +09:00
Dean Herbert
f11fe54385
Remove custom hash function flow
2022-06-15 00:42:30 +09:00
Dean Herbert
2f8290831a
Skip quick import clause when importing a single item
...
Closes https://github.com/ppy/osu/issues/18600 .
2022-06-15 00:26:34 +09:00
Dean Herbert
9f599a5ab4
Remove unused lowPriority
flag from one Import
method
2022-06-14 19:52:30 +09: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
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
6aa84425a2
Add comment explaining test expectations
2022-06-08 19:26:34 +09: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
3d4d87bcb2
Update test expectations
2022-06-08 18:34:28 +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
Dan Balasescu
86b685f7e4
Merge pull request #18589 from peppy/skin-bool-parsin
...
Change `skin.ini` boolean parsing to match osu!stable
2022-06-07 10:11:07 +09:00
Bartłomiej Dach
211f0d1e04
Expand test coverage for parsing bool skin config values
2022-06-06 19:57:08 +02:00
Dean Herbert
44400142e2
Merge pull request #18584 from smoogipoo/fix-spectating-combo
...
Fix combo starting at 0 when spectating
2022-06-06 19:16:47 +09: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
4e35ac8d4c
Add test
2022-06-06 18:01:52 +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
Dean Herbert
1b4c89c418
Update realm to latest version
...
Contains minor changes to async usage in line with upstream API changes.
I believe a feedback issue we were seeing with offset changes (the only
component using async write flow) may have been resolved by these
upstream changes (see [release
notes](https://github.com/realm/realm-dotnet/releases/tag/10.14.0 )) but
am not investigating further just yet.
2022-06-03 14:16: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
Bartłomiej Dach
d3f217cbdf
Merge branch 'master' into scoreprocessor-cleanup
2022-06-02 18:23:35 +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
Dan Balasescu
132c94c1b5
Remove Ruleset parameter from ResetFromReplayFrame()
2022-05-31 17:16:23 +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 OverlayColourProvider
s 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
Dan Balasescu
9259aa94f1
Fix Catmull slider parsing with duplicate initial point
2022-05-24 11:47:42 +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
9308d0b012
Merge branch 'master' into mod-key-multiplayer
2022-05-22 19:30:10 +02: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
Dean Herbert
d84119ac06
Merge pull request #18343 from frenzibyte/waveform-test-beatmap-failure
...
Fix `WaveformTestBeatmap`s potentially providing disposed track
2022-05-22 21:21:28 +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
Salman Ahmed
cef99fd020
Disallow transferring track from test WorkingBeatmap
s which have local stores
2022-05-20 16:08:31 +03: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
16075d2a2f
Merge pull request #18321 from smoogipoo/legacy-catmull
...
Fix compatibility issues with legacy Catmull sliders
2022-05-19 15:42:21 +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
fe49a7e678
Add failing tests
2022-05-18 17:10:19 +09: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
Dan Balasescu
5f2d9bf04c
Merge pull request #18211 from frenzibyte/audio-adjustment-breakage-alt
...
Fix mods potentially adjusting track while not selected
2022-05-12 15:44:19 +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
3d64dc53a6
Merge branch 'master' into audio-adjustment-breakage-alt
2022-05-12 14:18:28 +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
a97986df1c
Merge branch 'master' into update-libraries
2022-05-11 15:58:45 +03:00
Dean Herbert
fecf92e16f
Update libraries to latest versions
2022-05-11 19:54:59 +09: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
Dean Herbert
53259251af
Merge branch 'master' into mod-overlay/rename-new
2022-05-11 10:15:59 +09:00
Dean Herbert
dd316befb4
Merge pull request #18214 from bdach/mod-overlay/delete-old
...
Remove old mod overlay code
2022-05-11 10:09:42 +09:00