public void Returns_exact_percentiles_for_exact_durations(double duration, double expectedPercentile) { var dp = new DurationPercentiles(new double[] { 3, 1, 2 }); Assert.Equal(expectedPercentile, dp.PercentileAtDuration(duration)); }
public void Returns_interpolated_durations_for_inexact_percentiles(double percentile, double expectedDuration) { var dp = new DurationPercentiles(new double[] { 1, 2, 4, 10, 100 }); Assert.Equal(expectedDuration, dp.DurationAtPercentile(percentile), new DoubleEpsilonComparer()); }
public void Returns_exact_durations_for_exact_percentiles_2(double percentile, double expectedDuration) { var dp = new DurationPercentiles(new double[] { 1, 3, 5, 6, 8 }); Assert.Equal(expectedDuration, dp.DurationAtPercentile(percentile)); }
public void Orders_durations() { var dp = new DurationPercentiles(new double[] { 3, 1, 2 }); Assert.Equal(new double[] { 1, 2, 3 }, dp.Durations); }
public void Contains_input_durations() { var dp = new DurationPercentiles(new double[] { 1, 2, 3 }); Assert.Equal(new double[] { 1, 2, 3 }, dp.Durations); }
public void Percentile_over_maximum_is_1(double percentile, double expectedDuration) { var dp = new DurationPercentiles(new double[] { 1, 3, 5, 6, 8 }); Assert.Equal(expectedDuration, dp.PercentileAtDuration(percentile)); }