mirror of
https://github.com/ppy/osu.git
synced 2025-01-27 01:02:54 +08:00
Add test coverage of double-convert stability
This commit is contained in:
parent
ee49305cad
commit
4adfe9a6dc
@ -49,6 +49,22 @@ namespace osu.Game.Tests.Beatmaps.Formats
|
|||||||
Assert.IsTrue(areComboColoursEqual(decodedAfterEncode.beatmapSkin.Configuration, decoded.beatmapSkin.Configuration));
|
Assert.IsTrue(areComboColoursEqual(decodedAfterEncode.beatmapSkin.Configuration, decoded.beatmapSkin.Configuration));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestCaseSource(nameof(allBeatmaps))]
|
||||||
|
public void TestEncodeDecodeStabilityDoubleConvert(string name)
|
||||||
|
{
|
||||||
|
var decoded = decodeFromLegacy(beatmaps_resource_store.GetStream(name), name);
|
||||||
|
var decodedAfterEncode = decodeFromLegacy(encodeToLegacy(decoded), name);
|
||||||
|
|
||||||
|
// run an extra convert. this is expected to be stable.
|
||||||
|
decodedAfterEncode.beatmap = convert(decodedAfterEncode.beatmap);
|
||||||
|
|
||||||
|
sort(decoded.beatmap);
|
||||||
|
sort(decodedAfterEncode.beatmap);
|
||||||
|
|
||||||
|
Assert.That(decodedAfterEncode.beatmap.Serialize(), Is.EqualTo(decoded.beatmap.Serialize()));
|
||||||
|
Assert.IsTrue(areComboColoursEqual(decodedAfterEncode.beatmapSkin.Configuration, decoded.beatmapSkin.Configuration));
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void TestEncodeMultiSegmentSliderWithFloatingPointError()
|
public void TestEncodeMultiSegmentSliderWithFloatingPointError()
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user