public async Task WhenIncrementsAndDecrementsAreBelowTripLevel_ThenDoesNotStallOnCheck()
        {
            var cts = new CancellationTokenSource();

            Parallel.For(
                0,
                25,
                i =>
            {
                _circuitBreaker.Increment();
                if (i % 2 == 0)
                {
                    _circuitBreaker.Decrement();
                }
            });

            Task checkTask;
            await Task.WhenAny(
                checkTask = _circuitBreaker.CheckBreak(cts.Token),
                Task.Delay(timeoutInterval));

            Assert.True(checkTask.Status == TaskStatus.RanToCompletion);

            cts.Cancel();
            await checkTask;
        }