Пример #1
0
        public async Task Publish_CallsInnerPublisher(string topic, byte[] message)
        {
            var options = new KafkaOptions();

            var producer = Substitute.For <IKafkaProducer>();
            var sut      = new KafkaRawMessagePublisher(() => producer, options);
            await sut.Publish(topic, message, None);

            await producer.Received(1).ProduceAsync(topic, null, message);
        }
Пример #2
0
        public void Dispose_CallsFlushWithTimeout()
        {
            var options = new KafkaOptions
            {
                Publisher = { FlushTimeout = TimeSpan.MaxValue }
            };

            var producer = Substitute.For <IKafkaProducer>();
            var sut      = new KafkaRawMessagePublisher(() => producer, options);

            sut.Dispose();

            producer.Received(1).Dispose();
            producer.Received(1).Flush(TimeSpan.MaxValue);
        }