public void TestCheckValuesInRandomOrder() { var tracker = new PeriodTracker(unordered_periods); foreach (var period in unordered_periods.OrderBy(_ => RNG.Next())) { Assert.IsTrue(tracker.IsInAny(getMidpoint(period))); } }
public void TestCheckValuesInsidePeriods() { var tracker = new PeriodTracker(unordered_periods); foreach (var period in unordered_periods) { Assert.IsTrue(tracker.IsInAny(getMidpoint(period))); } }
public void TestReversedPeriodHandling() { Assert.Throws <ArgumentException>(() => { _ = new PeriodTracker(new[] { new Period(2.0, 1.0) }); }); }
public void TestCheckValueInsideSinglePeriod() { var tracker = new PeriodTracker(single_period); var period = single_period.Single(); Assert.IsTrue(tracker.IsInAny(period.Start)); Assert.IsTrue(tracker.IsInAny(getMidpoint(period))); Assert.IsTrue(tracker.IsInAny(period.End)); }
public void TestCheckValuesOutOfPeriods() { var tracker = new PeriodTracker(new[] { new Period(1.0, 2.0), new Period(3.0, 4.0) }); Assert.IsFalse(tracker.IsInAny(0.9), "Time before first period is being considered inside"); Assert.IsFalse(tracker.IsInAny(2.1), "Time right after first period is being considered inside"); Assert.IsFalse(tracker.IsInAny(2.9), "Time right before second period is being considered inside"); Assert.IsFalse(tracker.IsInAny(4.1), "Time after last period is being considered inside"); }
public void ApplyToBeatmap(IBeatmap beatmap) { spinnerPeriods = new PeriodTracker(beatmap.HitObjects.OfType <Spinner>().Select(b => new Period(b.StartTime - transition_duration, b.EndTime))); }
public void ApplyToBeatmap(IBeatmap beatmap) { spinnerPeriods = new PeriodTracker(beatmap.HitObjects.OfType <Spinner>().Select(b => new Period(b.StartTime - TRANSITION_DURATION, b.EndTime))); }