Example #1
0
        public void TestPerOperationSamplerWithKnownOperation()
        {
            GuaranteedThroughputSampler sampler = Substitute.ForPartsOf <GuaranteedThroughputSampler>(0, 0);

            _operationToSamplers.Add(operation, sampler);

            sampler.Sample(operation, TraceId)
            .Returns(new SamplingStatus(true, EmptyTags));

            SamplingStatus samplingStatus = _undertest.Sample(operation, TraceId);

            Assert.True(samplingStatus.IsSampled);
            sampler.Received(1).Sample(operation, TraceId);
            //verifyNoMoreInteractions(_defaultProbabilisticSampler);
        }
Example #2
0
        public void TestUpdate()
        {
            GuaranteedThroughputSampler guaranteedThroughputSampler = Substitute.ForPartsOf <GuaranteedThroughputSampler>(0, 0);

            _operationToSamplers.Add(operation, guaranteedThroughputSampler);

            var perOperationSamplingParameters = new PerOperationSamplingParameters(operation, new ProbabilisticSamplingStrategy(SamplingRate));
            var parametersList = new List <PerOperationSamplingParameters>();

            parametersList.Add(perOperationSamplingParameters);

            var parameters = new OperationSamplingParameters(DefaultSamplingProbability, DefaultLowerBoundTracesPerSecond, parametersList);

            Assert.True(_undertest.Update(parameters));
            guaranteedThroughputSampler.Received(1).Update(SamplingRate, DefaultLowerBoundTracesPerSecond);
            //verifyNoMoreInteractions(guaranteedThroughputSampler);
        }