public async Task CheckIsHealthy_WithMaxLength_LengthIsNotChecked(int currentLength, bool expected)
        {
            var queue = Substitute.For <IOutboundQueueConsumer>();

            queue.GetLength().Returns(currentLength);
            var service = new OutboundQueueHealthCheckService(queue);

            var result = await service.CheckIsHealthy(maxQueueLength : 100);

            result.Should().Be(expected);
        }
        public async Task CheckIsHealthy_WithoutMaxLength_LengthIsNotChecked()
        {
            var queue = Substitute.For <IOutboundQueueConsumer>();

            queue.GetLength().Returns(100);
            var service = new OutboundQueueHealthCheckService(queue);

            var result = await service.CheckIsHealthy();

            result.Should().BeTrue();
        }
        public async Task CheckIsHealthy_WithCustomMaxAge_MaxAgeIsChecked(int currentMaxAgeInSeconds, bool expected)
        {
            var queue = Substitute.For <IOutboundQueueConsumer>();

            queue.GetLength().Returns(10);
            queue.GetMaxAge().Returns(TimeSpan.FromSeconds(currentMaxAgeInSeconds));
            var service = new OutboundQueueHealthCheckService(queue);

            var result = await service.CheckIsHealthy(TimeSpan.FromMinutes(2));

            result.Should().Be(expected);
        }