1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-26 09:30:06 +08:00

Add toolbar in song select test to determine selected ruleset

This commit is contained in:
Salman Alshamrani
2025-05-03 01:30:31 +03:00
Unverified
parent 6fe29addde
commit 1b554d01d6
@@ -12,13 +12,11 @@ using osu.Framework.Graphics.Cursor;
using osu.Framework.Screens;
using osu.Framework.Testing;
using osu.Game.Database;
using osu.Game.Overlays;
using osu.Game.Overlays.Mods;
using osu.Game.Rulesets.Catch;
using osu.Game.Rulesets.Mania;
using osu.Game.Overlays.Toolbar;
using osu.Game.Rulesets.Mods;
using osu.Game.Rulesets.Osu;
using osu.Game.Rulesets.Osu.Mods;
using osu.Game.Rulesets.Taiko;
using osu.Game.Screens;
using osu.Game.Screens.Footer;
using osu.Game.Screens.Menu;
@@ -30,11 +28,14 @@ namespace osu.Game.Tests.Visual.SongSelectV2
public partial class TestSceneSongSelect : ScreenTestScene
{
[Cached]
private readonly ScreenFooter screenScreenFooter;
private readonly ScreenFooter screenFooter;
[Cached]
private readonly OsuLogo logo;
[Cached(typeof(INotificationOverlay))]
private readonly INotificationOverlay notificationOverlay = new NotificationOverlay();
protected override bool UseOnlineAPI => true;
public TestSceneSongSelect()
@@ -44,16 +45,25 @@ namespace osu.Game.Tests.Visual.SongSelectV2
new PopoverContainer
{
RelativeSizeAxes = Axes.Both,
Child = screenScreenFooter = new ScreenFooter
Children = new Drawable[]
{
OnBack = () => Stack.CurrentScreen.Exit(),
new Toolbar
{
State = { Value = Visibility.Visible },
},
screenFooter = new ScreenFooter
{
OnBack = () => Stack.CurrentScreen.Exit(),
},
logo = new OsuLogo
{
Alpha = 0f,
},
},
},
logo = new OsuLogo
{
Alpha = 0f,
},
};
Stack.Padding = new MarginPadding { Top = Toolbar.HEIGHT };
}
[BackgroundDependencyLoader]
@@ -82,15 +92,6 @@ namespace osu.Game.Tests.Visual.SongSelectV2
AddUntilStep("wait for load", () => Stack.CurrentScreen is Screens.SelectV2.SongSelect songSelect && songSelect.IsLoaded);
}
[Test]
public void TestRulesets()
{
AddStep("set osu ruleset", () => Ruleset.Value = new OsuRuleset().RulesetInfo);
AddStep("set taiko ruleset", () => Ruleset.Value = new TaikoRuleset().RulesetInfo);
AddStep("set catch ruleset", () => Ruleset.Value = new CatchRuleset().RulesetInfo);
AddStep("set mania ruleset", () => Ruleset.Value = new ManiaRuleset().RulesetInfo);
}
#region Footer
[Test]
@@ -212,13 +213,13 @@ namespace osu.Game.Tests.Visual.SongSelectV2
{
if (newScreen is IOsuScreen osuScreen && osuScreen.ShowFooter)
{
screenScreenFooter.Show();
screenScreenFooter.SetButtons(osuScreen.CreateFooterButtons());
screenFooter.Show();
screenFooter.SetButtons(osuScreen.CreateFooterButtons());
}
else
{
screenScreenFooter.Hide();
screenScreenFooter.SetButtons(Array.Empty<ScreenFooterButton>());
screenFooter.Hide();
screenFooter.SetButtons(Array.Empty<ScreenFooterButton>());
}
}
}