1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-26 15:02:55 +08:00

Fix first sample point being treated as redundant

This commit is contained in:
smoogipoo 2019-12-13 18:12:44 +09:00
parent 1cd26a0707
commit 87a7f340e3
2 changed files with 7 additions and 7 deletions

View File

@ -60,18 +60,18 @@ namespace osu.Game.Tests.NonVisual
{
var cpi = new ControlPointInfo();
cpi.Add(0, new SampleControlPoint()); // is redundant
cpi.Add(0, new SampleControlPoint()); // is *not* redundant, special exception for first sample point
cpi.Add(1000, new SampleControlPoint()); // is redundant
Assert.That(cpi.Groups.Count, Is.EqualTo(0));
Assert.That(cpi.Groups.Count, Is.EqualTo(1));
Assert.That(cpi.TimingPoints.Count, Is.EqualTo(0));
Assert.That(cpi.AllControlPoints.Count(), Is.EqualTo(0));
Assert.That(cpi.AllControlPoints.Count(), Is.EqualTo(1));
cpi.Add(1000, new SampleControlPoint { SampleVolume = 50 }); // is not redundant
Assert.That(cpi.Groups.Count, Is.EqualTo(1));
Assert.That(cpi.SamplePoints.Count, Is.EqualTo(1));
Assert.That(cpi.AllControlPoints.Count(), Is.EqualTo(1));
Assert.That(cpi.Groups.Count, Is.EqualTo(2));
Assert.That(cpi.SamplePoints.Count, Is.EqualTo(2));
Assert.That(cpi.AllControlPoints.Count(), Is.EqualTo(2));
}
[Test]

View File

@ -239,7 +239,7 @@ namespace osu.Game.Beatmaps.ControlPoints
break;
case SampleControlPoint _:
existing = SamplePointAt(time);
existing = binarySearch(SamplePoints, time);
break;
case DifficultyControlPoint _: