public void TryReceive_HasMessage_ReturnsTrueAndMessage() { var config = new KafkaQueueConfiguration { IsConsumer = true }; var consumeResult = new ConsumeResult <Ignore, byte[]> { Message = new Message <Ignore, byte[]> { Value = new byte[] { 0xDE, 0xAD, 0xBE, 0xEF }, Timestamp = new Timestamp(DateTime.Now), Headers = new Headers() }, Topic = "Topic" }; var connectionFactoryMock = Given.KafkaConnectionFactory; connectionFactoryMock.ConsumerMock .Setup(x => x.Consume(It.IsAny <CancellationToken>())) .Returns(consumeResult); var adapter = Given.KafkaQueueMessageAdapter .WithConfiguration(config) .WithConnectionFactory(connectionFactoryMock) .Please(); adapter.Connect(); var hasMessage = adapter.TryReceive(out var message); Assert.IsTrue(hasMessage); Assert.IsInstanceOf <BytesMessage>(message); var bytesMessage = (BytesMessage)message; Assert.AreEqual(consumeResult.Message.Value, bytesMessage.Body); Assert.AreEqual(consumeResult.Timestamp.UtcDateTime, bytesMessage.SendDateTime); Assert.AreEqual(consumeResult.Topic, bytesMessage.ReplyQueue); }
public KafkaQueueMessageAdapterBuilder WithConfiguration(KafkaQueueConfiguration config) { _configuration = config; return(this); }
public IProducer <Null, byte[]> CreateProducer(KafkaQueueConfiguration config, Action <IProducer <Null, byte[]>, LogMessage> logHandler, Action <IProducer <Null, byte[]>, Error> errorHandler) { return(ProducerMock.Object); }
public IConsumer <Ignore, byte[]> CreateConsumer(KafkaQueueConfiguration config, Action <IConsumer <Ignore, byte[]>, LogMessage> logHandler, Action <IConsumer <Ignore, byte[]>, Error> errorHandler) { return(ConsumerMock.Object); }