class Osbourne::Test::MockPubsub

Public Class Methods

mock_publish(topic, message) click to toggle source
# File lib/osbourne/test/mock_pubsub.rb, line 8
def mock_publish(topic, message)
  # prefixed_topic = Osbourne.prefixer(topic)
  parsed_message = parse(message)
  Osbourne::WorkerBase.descendants.each do |worker|
    msg = Osbourne::Test::Message.new(topic: topic, body: parsed_message)
    worker.new.process(msg) if worker.config[:topic_names].include? topic
  end
end
parse(message) click to toggle source
# File lib/osbourne/test/mock_pubsub.rb, line 17
def parse(message)
  return message if message.is_a?(String)
  return message.to_json if message.respond_to?(:to_json)

  raise ArgumentError, "Message must either be a string or respond to #to_json"
end