mirror of
https://github.com/ppy/osu.git
synced 2025-02-14 23:33:23 +08:00
Improve test to also check that reverting hash restores old scores
This commit is contained in:
parent
c7eec371f5
commit
d4d985ba0f
@ -100,10 +100,11 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
public void TestLocalScoresDisplayOnBeatmapEdit()
|
public void TestLocalScoresDisplayOnBeatmapEdit()
|
||||||
{
|
{
|
||||||
BeatmapInfo beatmapInfo = null!;
|
BeatmapInfo beatmapInfo = null!;
|
||||||
|
string originalHash = string.Empty;
|
||||||
|
|
||||||
AddStep(@"Set scope", () => leaderboard.Scope = BeatmapLeaderboardScope.Local);
|
AddStep(@"Set scope", () => leaderboard.Scope = BeatmapLeaderboardScope.Local);
|
||||||
|
|
||||||
AddStep(@"Set beatmap", () =>
|
AddStep(@"Import beatmap", () =>
|
||||||
{
|
{
|
||||||
beatmapManager.Import(TestResources.GetQuickTestBeatmapForImport()).WaitSafely();
|
beatmapManager.Import(TestResources.GetQuickTestBeatmapForImport()).WaitSafely();
|
||||||
beatmapInfo = beatmapManager.GetAllUsableBeatmapSets().First().Beatmaps.First();
|
beatmapInfo = beatmapManager.GetAllUsableBeatmapSets().First().Beatmaps.First();
|
||||||
@ -114,23 +115,39 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
clearScores();
|
clearScores();
|
||||||
checkCount(0);
|
checkCount(0);
|
||||||
|
|
||||||
|
AddStep(@"Perform initial save to guarantee stable hash", () =>
|
||||||
|
{
|
||||||
|
IBeatmap beatmap = beatmapManager.GetWorkingBeatmap(beatmapInfo).Beatmap;
|
||||||
|
beatmapManager.Save(beatmapInfo, beatmap);
|
||||||
|
|
||||||
|
originalHash = beatmapInfo.Hash;
|
||||||
|
});
|
||||||
|
|
||||||
importMoreScores(() => beatmapInfo);
|
importMoreScores(() => beatmapInfo);
|
||||||
checkCount(10);
|
checkCount(10);
|
||||||
|
|
||||||
AddStep(@"Save beatmap with changes", () =>
|
AddStep(@"Save with changes", () =>
|
||||||
{
|
{
|
||||||
IBeatmap beatmap = beatmapManager.GetWorkingBeatmap(beatmapInfo).Beatmap;
|
IBeatmap beatmap = beatmapManager.GetWorkingBeatmap(beatmapInfo).Beatmap;
|
||||||
|
beatmap.Difficulty.ApproachRate = 12;
|
||||||
beatmap.Difficulty.ApproachRate = 11;
|
|
||||||
beatmap.Difficulty.DrainRate = 11;
|
|
||||||
beatmap.Difficulty.OverallDifficulty = 11;
|
|
||||||
|
|
||||||
beatmapManager.Save(beatmapInfo, beatmap);
|
beatmapManager.Save(beatmapInfo, beatmap);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
AddAssert("Hash changed", () => beatmapInfo.Hash, () => Is.Not.EqualTo(originalHash));
|
||||||
checkCount(0);
|
checkCount(0);
|
||||||
|
|
||||||
importMoreScores(() => beatmapInfo);
|
importMoreScores(() => beatmapInfo);
|
||||||
|
importMoreScores(() => beatmapInfo);
|
||||||
|
checkCount(20);
|
||||||
|
|
||||||
|
AddStep(@"Revert changes", () =>
|
||||||
|
{
|
||||||
|
IBeatmap beatmap = beatmapManager.GetWorkingBeatmap(beatmapInfo).Beatmap;
|
||||||
|
beatmap.Difficulty.ApproachRate = 8;
|
||||||
|
beatmapManager.Save(beatmapInfo, beatmap);
|
||||||
|
});
|
||||||
|
|
||||||
|
AddAssert("Hash restored", () => beatmapInfo.Hash, () => Is.EqualTo(originalHash));
|
||||||
checkCount(10);
|
checkCount(10);
|
||||||
|
|
||||||
clearScores();
|
clearScores();
|
||||||
|
Loading…
Reference in New Issue
Block a user