public void Returns_empty_uniform_snapshot_when_zero_size()
        {
            var reservoir = new DefaultSlidingWindowReservoir(0);

            reservoir.GetSnapshot().Should().BeOfType <UniformSnapshot>();
            reservoir.GetSnapshot().Size.Should().Be(0);
            reservoir.GetSnapshot().Values.Should().BeEmpty();
        }
Ejemplo n.º 2
0
        public override void Setup()
        {
            _fixture = new MetricsCoreTestFixture();

            _reservoir = new DefaultSlidingWindowReservoir();

            _scheduler = new DefaultMetricsTaskSchedular(c => Tick());
        }
Ejemplo n.º 3
0
        public void SlidingWindowReservoir()
        {
            var reservoir = new DefaultSlidingWindowReservoir(Constants.ReservoirSampling.DefaultSampleSize);

            foreach (var sample in _samples)
            {
                reservoir.Update(sample);
            }

            var snapshot = reservoir.GetSnapshot();

            AssertValues(snapshot);
        }
        public void parameterless_ctor_uses_default_sample_size()
        {
            var reservoir = new DefaultSlidingWindowReservoir();

            var fields = typeof(DefaultSlidingWindowReservoir).GetFields(BindingFlags.Instance
                                                                         | BindingFlags.GetField
                                                                         | BindingFlags.SetField
                                                                         | BindingFlags.NonPublic);

            var field = fields.FirstOrDefault(feildInfo => feildInfo.Name == "_values");

            ((UserValueWrapper[])field.GetValue(reservoir)).Length.Should().Be(Constants.ReservoirSampling.DefaultSampleSize);
        }
Ejemplo n.º 5
0
        public void Parameterless_ctor_uses_default_sample_size()
        {
            var reservoir = new DefaultSlidingWindowReservoir();

            var fields = typeof(DefaultSlidingWindowReservoir).GetFields(
                BindingFlags.Instance
                | BindingFlags.GetField
                | BindingFlags.SetField
                | BindingFlags.NonPublic);

            var field = fields.FirstOrDefault(feildInfo => feildInfo.Name == "_values");

            // ReSharper disable PossibleNullReferenceException
            ((UserValueWrapper[])field.GetValue(reservoir)).Length.Should().Be(AppMetricsReservoirSamplingConstants.DefaultSampleSize);
            // ReSharper restore PossibleNullReferenceException
        }
Ejemplo n.º 6
0
        public override void Setup()
        {
            _fixture = new MetricsCoreTestFixture();

            _reservoir = new DefaultSlidingWindowReservoir();

            _scheduler = new DefaultTaskScheduler();

            _scheduler.Interval(
                TimeSpan.FromMilliseconds(10),
                TaskCreationOptions.None,
                () =>
            {
                _reservoir.GetSnapshot();
                _reservoir.Reset();
            });
        }
        public void SlidingWindowReservoir()
        {
            var reservoir = new DefaultSlidingWindowReservoir(SampleSize);

            Run(reservoir);
        }