class KafkaSession::MockProducer
Public Class Methods
new()
click to toggle source
# File lib/kafka_session/mock_producer.rb, line 5 def initialize @messages_by_topic = Hash.new { |messages, topic| messages[topic] = [] } end
Public Instance Methods
messages_for_topic(topic)
click to toggle source
# File lib/kafka_session/mock_producer.rb, line 21 def messages_for_topic(topic) @messages_by_topic[topic].map do |message| DeliveredMessage.new(message) end end
publish(topic:, messages:)
click to toggle source
# File lib/kafka_session/mock_producer.rb, line 9 def publish(topic:, messages:) messages.each do |message| @messages_by_topic[topic] << OpenStruct.new( value: message, topic: topic, partition: 1, offset: 100, key: nil ) end end