Fix failing test and add coverage of conversion case

This commit is contained in:
Dean Herbert 2023-12-13 15:38:06 +09:00
parent 0611a1ddc9
commit eff81be6fd
No known key found for this signature in database

View File

@ -14,7 +14,9 @@ using osu.Game.Beatmaps;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Resources.Localisation.Web; using osu.Game.Resources.Localisation.Web;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Mania;
using osu.Game.Rulesets.Mods; using osu.Game.Rulesets.Mods;
using osu.Game.Rulesets.Osu;
using osu.Game.Rulesets.Osu.Mods; using osu.Game.Rulesets.Osu.Mods;
using osu.Game.Screens.Select.Details; using osu.Game.Screens.Select.Details;
using osuTK.Graphics; using osuTK.Graphics;
@ -38,6 +40,12 @@ namespace osu.Game.Tests.Visual.SongSelect
Width = 500 Width = 500
}); });
[SetUpSteps]
public void SetUpSteps()
{
AddStep("reset game ruleset", () => Ruleset.Value = new OsuRuleset().RulesetInfo);
}
private BeatmapInfo exampleBeatmapInfo => new BeatmapInfo private BeatmapInfo exampleBeatmapInfo => new BeatmapInfo
{ {
Ruleset = rulesets.AvailableRulesets.First(), Ruleset = rulesets.AvailableRulesets.First(),
@ -66,8 +74,10 @@ namespace osu.Game.Tests.Visual.SongSelect
} }
[Test] [Test]
public void TestManiaFirstBarText() public void TestManiaFirstBarTextManiaBeatmap()
{ {
AddStep("set game ruleset to mania", () => Ruleset.Value = new ManiaRuleset().RulesetInfo);
AddStep("set beatmap", () => advancedStats.BeatmapInfo = new BeatmapInfo AddStep("set beatmap", () => advancedStats.BeatmapInfo = new BeatmapInfo
{ {
Ruleset = rulesets.GetRuleset(3) ?? throw new InvalidOperationException("osu!mania ruleset not found"), Ruleset = rulesets.GetRuleset(3) ?? throw new InvalidOperationException("osu!mania ruleset not found"),
@ -84,6 +94,27 @@ namespace osu.Game.Tests.Visual.SongSelect
AddAssert("first bar text is correct", () => advancedStats.ChildrenOfType<SpriteText>().First().Text == BeatmapsetsStrings.ShowStatsCsMania); AddAssert("first bar text is correct", () => advancedStats.ChildrenOfType<SpriteText>().First().Text == BeatmapsetsStrings.ShowStatsCsMania);
} }
[Test]
public void TestManiaFirstBarTextConvert()
{
AddStep("set game ruleset to mania", () => Ruleset.Value = new ManiaRuleset().RulesetInfo);
AddStep("set beatmap", () => advancedStats.BeatmapInfo = new BeatmapInfo
{
Ruleset = new OsuRuleset().RulesetInfo,
Difficulty = new BeatmapDifficulty
{
CircleSize = 5,
DrainRate = 4.3f,
OverallDifficulty = 4.5f,
ApproachRate = 3.1f
},
StarRating = 8
});
AddAssert("first bar text is correct", () => advancedStats.ChildrenOfType<SpriteText>().First().Text == BeatmapsetsStrings.ShowStatsCsMania);
}
[Test] [Test]
public void TestEasyMod() public void TestEasyMod()
{ {