public void AllDensitiesEqualOne() { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents1, 31 * Durations.Second, 35 * Durations.Second - 1, Durations.Second); Assert.NotEmpty(densities); Assert.All(densities, d => Assert.Equal(1, d)); }
public void CalculateDensityForRangeWithNoEvents(long start, long end, long segmentSize, double expectedDensity) { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents1, start, end, segmentSize); Assert.Single(densities); Assert.DensitiesEqual(expectedDensity, densities[0]); }
public void ShouldThrowWhenSegmentSizeIsTooBig() { Assert.Throws <ArgumentException>(() => { DensityCalculationManager.GetDensities( _fixture.SampleEvents1, 24 * Durations.Second, 24 * Durations.Second + 1000, Durations.Second); }); }
public void ShouldThrowExceptionWhenEndEqualsStart() { Assert.Throws <ArgumentException>(() => { DensityCalculationManager.GetDensities( _fixture.SampleEvents1, 24 * Durations.Second, 24 * Durations.Second, Durations.Second); }); }
public void ShouldThrowExceptionWhenTooMuchSegments(long start, long end, long segmentSize) { Assert.Throws <ArgumentException>(() => { DensityCalculationManager.GetDensities( _fixture.SampleEvents1, start, end, segmentSize); }); }
public void CalculateDensitiesForSeveralSegments(long start, long end, long segmentSize, double[] expectedDensities) { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents2, start, end, segmentSize); Assert.Equal(densities.Length, expectedDensities.Length); for (var i = 0; i < densities.Length; i++) { Assert.Equal(expectedDensities[i], densities[i]); } }
public void LastDensityIsZero() { var densities = DensityCalculationManager.GetDensities( _fixture.SampleEvents1, 31 * Durations.Second, 44 * Durations.Second, Durations.Second); Assert.NotEmpty(densities); Assert.True(densities.Last() == 0); }
/// <summary> /// Calculates densities for specific interval with specific segment size using pre-allocated buffer /// </summary> /// <param name="start">Start time (inclusive)</param> /// <param name="end">End time (inclusive)</param> /// <param name="segmentSize">Segment size</param> /// <param name="targetBuffer">Pre-allocated buffer</param> /// <returns>Part of the pre-allocated buffer where calculated densities were set</returns> public Span <double> GetDensities(long start, long end, long segmentSize, ref double[] targetBuffer) { return(DensityCalculationManager.GetDensities(this, start, end, segmentSize, ref targetBuffer)); }
/// <summary> /// Calculates densities for specific interval with specific segment size /// </summary> /// <param name="start">Start time (inclusive)</param> /// <param name="end">End time (inclusive)</param> /// <param name="segmentSize">Segment size</param> /// <returns>All the densities that were calculated for the given interval</returns> public double[] GetDensities(long start, long end, long segmentSize) { return(DensityCalculationManager.GetDensities(this, start, end, segmentSize)); }
public void NoDensities() { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents1, 255 * Durations.Second, 260 * Durations.Second - 1, Durations.Second); Assert.Empty(densities); }
public void DensitiesCountShouldMatch(long start, long end, long segmentSize, int expectedDensitiesCount) { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents1, start, end, segmentSize); Assert.Equal(densities.Length, expectedDensitiesCount); }
public void CalculateDensityForRangeWithStartAndStopEvents(long start, long end, long segmentSize, double expectedDensity) { var densities = DensityCalculationManager.GetDensities(_fixture.SampleEvents1, start, end, segmentSize); Assert.All(densities, d => Assert.DensitiesEqual(expectedDensity, d)); }