예제 #1
0
        public async Task CheckHealthAsync_Unhealthy_ThrowsException()
        {
            var counterProvider = new Mock <ICounterProvider>();

            counterProvider
            .Setup(p => p.GetCounter(It.IsAny <string>(), It.IsAny <bool>()))
            .Throws(new Exception());
            var check = new CounterCheck(counterProvider.Object);

            var settings = new CounterCheckSettings("counter", false, 0, null, 0, 0, false);
            var context  = new HealthCheckContext(settings);

            await Assert.ThrowsAsync <Exception>(async() => await check.CheckHealthAsync(context, settings));
        }
예제 #2
0
        public async Task CheckHealthAsync_Warning_CheckWarned(long counterValue, long errorThreshold, long warningThreshold)
        {
            var counter = new LocalCounter("test");

            counter.Value = counterValue;
            var counterProvider = new TestCounterProvider(counter);
            var check           = new CounterCheck(counterProvider);

            var settings = new CounterCheckSettings("counter", false, 0, null, errorThreshold, warningThreshold, false);
            var context  = new HealthCheckContext(settings);

            await check.CheckHealthAsync(context, settings);

            Assert.True(context.HasWarned);
        }