Class: RabbitJobs::Publisher::Test
- Defined in:
- lib/rabbit_jobs/publisher/test.rb
Overview
Publisher for testing. Stores AMQP messages to array.
Class Method Summary collapse
- .cleanup ⇒ Object
- .direct_publish_to(routing_key, payload, ex = {}) ⇒ Object
- .publish_to(routing_key, klass, *params) ⇒ Object
- .purge_queue(*routing_keys) ⇒ Object
- .queue_status(routing_key) ⇒ Object
Class Method Details
.cleanup ⇒ Object
9 10 11 |
# File 'lib/rabbit_jobs/publisher/test.rb', line 9 def cleanup .clear end |
.direct_publish_to(routing_key, payload, ex = {}) ⇒ Object
20 21 22 23 24 |
# File 'lib/rabbit_jobs/publisher/test.rb', line 20 def direct_publish_to(routing_key, payload, ex = {}) exchange_name = ex.is_a?(Hash) ? ex[:name] : ex .push payload: payload, exchange_name: exchange_name.to_s, routing_key: routing_key.to_s true end |
.publish_to(routing_key, klass, *params) ⇒ Object
13 14 15 16 17 18 |
# File 'lib/rabbit_jobs/publisher/test.rb', line 13 def publish_to(routing_key, klass, *params) check_amqp_publishing_params(routing_key, klass) payload = Job.serialize(klass, *params) direct_publish_to(routing_key.to_sym, payload) end |
.purge_queue(*routing_keys) ⇒ Object
26 27 28 29 |
# File 'lib/rabbit_jobs/publisher/test.rb', line 26 def purge_queue(*routing_keys) fail ArgumentError unless routing_keys.present? .clear end |
.queue_status(routing_key) ⇒ Object
31 32 33 34 |
# File 'lib/rabbit_jobs/publisher/test.rb', line 31 def queue_status(routing_key) check_queue_status_params(routing_key) { message_count: .count, consumer_count: 0 } end |