public async Task WhenMessageSucceeds_ThenCircuitRemainsClosed() { _mockHandleMessageBehaviour.Action = () => { }; var action = new Func <Task <int> >(async() => { await _messageProcessingPipeline.Invoke(new MessageContext()); return(1); }); using (var cancellationTokenSource = new CancellationTokenSource()) { await _batchProcessingBehaviourPipeline.Invoke(action, cancellationTokenSource); } _events.DidNotReceiveWithAnyArgs().Broken(null, null); }
public Task ProcessBatch(IMessageReceiver messageReceiver, CancellationTokenSource tokenSource) { return(_batchProcessingBehaviourPipeline.Invoke(async() => { var batch = _batchFactory.Create(); await batch.ReceiveMessages(messageReceiver).ConfigureAwait(false); if (batch.HasMessages) { _log.LogDebug($"Message collection processing {batch.MessageCount} messages"); await batch.ProcessMessages().ConfigureAwait(false); } }, tokenSource)); }