From ae4e015352c63f33a4c2eb08b70282b2c2c0d109 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= Date: Fri, 3 Oct 2025 09:20:24 +0200 Subject: [PATCH] Add failing test scene --- .../SongSelectV2/TestSceneSongSelect.cs | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/osu.Game.Tests/Visual/SongSelectV2/TestSceneSongSelect.cs b/osu.Game.Tests/Visual/SongSelectV2/TestSceneSongSelect.cs index 945ec5d207..a8f68492c4 100644 --- a/osu.Game.Tests/Visual/SongSelectV2/TestSceneSongSelect.cs +++ b/osu.Game.Tests/Visual/SongSelectV2/TestSceneSongSelect.cs @@ -22,6 +22,7 @@ using osu.Game.Screens.Menu; using osu.Game.Screens.Play; using osu.Game.Screens.Ranking; using osu.Game.Screens.Select; +using osu.Game.Screens.Select.Filter; using osu.Game.Screens.Select.Leaderboards; using osu.Game.Screens.SelectV2; using osu.Game.Tests.Resources; @@ -143,6 +144,36 @@ namespace osu.Game.Tests.Visual.SongSelectV2 void onScreenPushed(IScreen lastScreen, IScreen newScreen) => screensPushed.Add(lastScreen); } + [Test] + public void TestHoveringLeftSideReexpandsGroupSelectionIsIn() + { + ImportBeatmapForRuleset(0); + + LoadSongSelect(); + SortAndGroupBy(SortMode.Difficulty, GroupMode.Difficulty); + + AddStep("move mouse to carousel", () => InputManager.MoveMouseTo(Carousel)); + + AddUntilStep("expanded group is below 1 star", + () => (Carousel.ChildrenOfType().SingleOrDefault(p => p.Expanded.Value)?.Item?.Model as StarDifficultyGroupDefinition)?.Difficulty.Stars, + () => Is.EqualTo(0)); + + AddStep("select next group", () => + { + InputManager.PressKey(Key.ShiftLeft); + InputManager.Key(Key.Right); + InputManager.ReleaseKey(Key.ShiftLeft); + }); + AddUntilStep("expanded group is 3 star", + () => (Carousel.ChildrenOfType().SingleOrDefault(p => p.Expanded.Value)?.Item?.Model as StarDifficultyGroupDefinition)?.Difficulty.Stars, + () => Is.EqualTo(3)); + + AddStep("move mouse to left side container", () => InputManager.MoveMouseTo(this.ChildrenOfType().Single())); + AddUntilStep("expanded group is below 1 star", + () => (Carousel.ChildrenOfType().Single(p => p.Expanded.Value).Item?.Model as StarDifficultyGroupDefinition)?.Difficulty.Stars, + () => Is.EqualTo(0)); + } + #region Hotkeys [Test]