mirror of
https://github.com/ppy/osu
synced 2025-03-25 04:18:03 +00:00
Fix some BeatmapCarousel
tests not correctly reinitialising local data per run
Closes https://github.com/ppy/osu/issues/19949.
This commit is contained in:
parent
136dcee3b5
commit
1032b2a68c
@ -244,8 +244,12 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
|
|
||||||
const int total_set_count = 200;
|
const int total_set_count = 200;
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
for (int i = 0; i < total_set_count; i++)
|
for (int i = 0; i < total_set_count; i++)
|
||||||
sets.Add(TestResources.CreateTestBeatmapSetInfo());
|
sets.Add(TestResources.CreateTestBeatmapSetInfo());
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
@ -275,8 +279,12 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
|
|
||||||
const int total_set_count = 20;
|
const int total_set_count = 20;
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
for (int i = 0; i < total_set_count; i++)
|
for (int i = 0; i < total_set_count; i++)
|
||||||
sets.Add(TestResources.CreateTestBeatmapSetInfo(3));
|
sets.Add(TestResources.CreateTestBeatmapSetInfo(3));
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
@ -493,6 +501,10 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
|
|
||||||
const string zzz_string = "zzzzz";
|
const string zzz_string = "zzzzz";
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
|
|
||||||
for (int i = 0; i < 20; i++)
|
for (int i = 0; i < 20; i++)
|
||||||
{
|
{
|
||||||
var set = TestResources.CreateTestBeatmapSetInfo();
|
var set = TestResources.CreateTestBeatmapSetInfo();
|
||||||
@ -505,6 +517,7 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
|
|
||||||
sets.Add(set);
|
sets.Add(set);
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
@ -521,6 +534,11 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
public void TestSortingStability()
|
public void TestSortingStability()
|
||||||
{
|
{
|
||||||
var sets = new List<BeatmapSetInfo>();
|
var sets = new List<BeatmapSetInfo>();
|
||||||
|
int idOffset = 0;
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
|
|
||||||
for (int i = 0; i < 10; i++)
|
for (int i = 0; i < 10; i++)
|
||||||
{
|
{
|
||||||
@ -535,7 +553,8 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
sets.Add(set);
|
sets.Add(set);
|
||||||
}
|
}
|
||||||
|
|
||||||
int idOffset = sets.First().OnlineID;
|
idOffset = sets.First().OnlineID;
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
@ -556,6 +575,11 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
public void TestSortingStabilityWithNewItems()
|
public void TestSortingStabilityWithNewItems()
|
||||||
{
|
{
|
||||||
List<BeatmapSetInfo> sets = new List<BeatmapSetInfo>();
|
List<BeatmapSetInfo> sets = new List<BeatmapSetInfo>();
|
||||||
|
int idOffset = 0;
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
|
|
||||||
for (int i = 0; i < 3; i++)
|
for (int i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
@ -570,12 +594,13 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
sets.Add(set);
|
sets.Add(set);
|
||||||
}
|
}
|
||||||
|
|
||||||
int idOffset = sets.First().OnlineID;
|
idOffset = sets.First().OnlineID;
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
AddStep("Sort by artist", () => carousel.Filter(new FilterCriteria { Sort = SortMode.Artist }, false));
|
AddStep("Sort by artist", () => carousel.Filter(new FilterCriteria { Sort = SortMode.Artist }, false));
|
||||||
AddAssert("Items remain in original order", () => carousel.BeatmapSets.Select((set, index) => set.OnlineID == idOffset + index).All(b => b));
|
assertOriginalOrderMaintained();
|
||||||
|
|
||||||
AddStep("Add new item", () =>
|
AddStep("Add new item", () =>
|
||||||
{
|
{
|
||||||
@ -590,10 +615,16 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
carousel.UpdateBeatmapSet(set);
|
carousel.UpdateBeatmapSet(set);
|
||||||
});
|
});
|
||||||
|
|
||||||
AddAssert("Items remain in original order", () => carousel.BeatmapSets.Select((set, index) => set.OnlineID == idOffset + index).All(b => b));
|
assertOriginalOrderMaintained();
|
||||||
|
|
||||||
AddStep("Sort by title", () => carousel.Filter(new FilterCriteria { Sort = SortMode.Title }, false));
|
AddStep("Sort by title", () => carousel.Filter(new FilterCriteria { Sort = SortMode.Title }, false));
|
||||||
AddAssert("Items remain in original order", () => carousel.BeatmapSets.Select((set, index) => set.OnlineID == idOffset + index).All(b => b));
|
assertOriginalOrderMaintained();
|
||||||
|
|
||||||
|
void assertOriginalOrderMaintained()
|
||||||
|
{
|
||||||
|
AddAssert("Items remain in original order",
|
||||||
|
() => carousel.BeatmapSets.Select(s => s.OnlineID), () => Is.EqualTo(carousel.BeatmapSets.Select((set, index) => idOffset + index)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
@ -601,6 +632,10 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
{
|
{
|
||||||
List<BeatmapSetInfo> sets = new List<BeatmapSetInfo>();
|
List<BeatmapSetInfo> sets = new List<BeatmapSetInfo>();
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
sets.Clear();
|
||||||
|
|
||||||
for (int i = 0; i < 3; i++)
|
for (int i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
var set = TestResources.CreateTestBeatmapSetInfo(3);
|
var set = TestResources.CreateTestBeatmapSetInfo(3);
|
||||||
@ -608,6 +643,7 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
set.Beatmaps[2].StarRating = 6 + i;
|
set.Beatmaps[2].StarRating = 6 + i;
|
||||||
sets.Add(set);
|
sets.Add(set);
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(sets);
|
loadBeatmaps(sets);
|
||||||
|
|
||||||
@ -759,8 +795,13 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
{
|
{
|
||||||
List<BeatmapSetInfo> manySets = new List<BeatmapSetInfo>();
|
List<BeatmapSetInfo> manySets = new List<BeatmapSetInfo>();
|
||||||
|
|
||||||
|
AddStep("Populuate beatmap sets", () =>
|
||||||
|
{
|
||||||
|
manySets.Clear();
|
||||||
|
|
||||||
for (int i = 1; i <= 50; i++)
|
for (int i = 1; i <= 50; i++)
|
||||||
manySets.Add(TestResources.CreateTestBeatmapSetInfo(3));
|
manySets.Add(TestResources.CreateTestBeatmapSetInfo(3));
|
||||||
|
});
|
||||||
|
|
||||||
loadBeatmaps(manySets);
|
loadBeatmaps(manySets);
|
||||||
|
|
||||||
@ -791,6 +832,8 @@ namespace osu.Game.Tests.Visual.SongSelect
|
|||||||
|
|
||||||
AddStep("populate maps", () =>
|
AddStep("populate maps", () =>
|
||||||
{
|
{
|
||||||
|
manySets.Clear();
|
||||||
|
|
||||||
for (int i = 0; i < 10; i++)
|
for (int i = 0; i < 10; i++)
|
||||||
{
|
{
|
||||||
manySets.Add(TestResources.CreateTestBeatmapSetInfo(3, new[]
|
manySets.Add(TestResources.CreateTestBeatmapSetInfo(3, new[]
|
||||||
|
Loading…
Reference in New Issue
Block a user