public async Task HandleAsync_OutboundMessage_RelayedToEndpoint()
        {
            var outboundEnvelope = new OutboundEnvelope <TestEventOne>(
                new TestEventOne(),
                Array.Empty <MessageHeader>(),
                new TestProducerEndpoint("test"));

            await _behavior.HandleAsync(
                outboundEnvelope,
                message => Task.FromResult(new[] { message }.AsReadOnlyCollection()) !);

            await _behavior.HandleAsync(
                outboundEnvelope,
                message => Task.FromResult(new[] { message }.AsReadOnlyCollection()) !);

            await _behavior.HandleAsync(
                outboundEnvelope,
                message => Task.FromResult(new[] { message }.AsReadOnlyCollection()) !);

            await _outbox.CommitAsync();

            var queued = await _outbox.ReadAsync(10);

            queued.Should().BeEmpty();
            _broker.ProducedMessages.Should().HaveCount(3);
        }
        public async Task Dequeue_WithCommittedEnvelopes_ExpectedEnvelopesReturned(int count, int expected)
        {
            for (var i = 0; i < 5; i++)
            {
                await _queue.WriteAsync(_sampleOutboundEnvelope);
            }

            await _queue.CommitAsync();

            var result = await _queue.ReadAsync(count);

            result.Should().HaveCount(expected);
        }
Esempio n. 3
0
        public async Task Dequeue_WithCommittedEnvelopes_ExpectedEnvelopesReturned(
            int count,
            int expected)
        {
            for (var i = 0; i < 5; i++)
            {
                await _queue.WriteAsync(
                    _sampleOutboundEnvelope.Message,
                    _sampleOutboundEnvelope.RawMessage.ReadAll(),
                    _sampleOutboundEnvelope.Headers,
                    _sampleOutboundEnvelope.Endpoint.Name,
                    _sampleOutboundEnvelope.ActualEndpointName);
            }

            await _queue.CommitAsync();

            var result = await _queue.ReadAsync(count);

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