alm0ra / mockafka-py

Mockafka-py is a Python library designed for in-memory mocking of Kafka.[aiokafka - confluence-kafka-python]
https://mockafka-py.readthedocs.io
MIT License
44 stars 11 forks source link

fix(consumer): make consume return proper number of messages #102

Closed skonik closed 3 months ago

skonik commented 3 months ago

This PR fixes problem with consume method. consumed_messages.append(self.poll()) saved wrong number of messages.

2 produced messages were appearing as only 1 message on consumer side using consumer.consume.

# producing 2 messages
producer = FakeProducer()
producer.produce(topic="test", value=b"test", partition=5)
producer.produce(topic="test", value=b"test", partition=5)

consumer = FakeConsumer()
consumer.subscribe(["test"])
messages = consumer.consume(10)

print(messages)
# returns 1 message. Expected - 2
# [<mockafka.message.Message object at 0x10bc0b2d0>]