public async Task StopConsumeAsync_Test() { var consumer = new RabbitConsumer(_connection, _serviceName, _topicName, MessageHandler, () => { }, false, 100, _options, _logger); await consumer.StartConsumeAsync(_cancellationTokenSource.Token); Assert.IsTrue(consumer.IsStarted); // first stop consumer.AbortConsume(); A.CallTo(() => _rabbitChannel.BasicCancel(_consumerTag)) .MustHaveHappenedOnceExactly(); Assert.IsFalse(consumer.IsStarted); // does not repeat execution if stopped multiple times consumer.AbortConsume(); A.CallTo(() => _rabbitChannel.BasicCancel(_consumerTag)) .MustHaveHappenedOnceExactly(); Assert.IsFalse(consumer.IsStarted); }