Sha256: 0bcbd567c282c339d2295d0a2478c7b30eb0bcfe7a85f957db6b22c6e136b082

Contents?: true

Size: 830 Bytes

Versions: 46

Compression:

Stored size: 830 Bytes

Contents

class IntegrationTestSetup

  def threads
    @threads ||= {}
  end

  def queues
    @queues ||= []
  end

  def make_queue_and_setup_receiver(klass,queue_name,routing_key)
    queue = channel.queue(queue_name, durable: true, arguments: {})
    queue.bind(topic_exchange, routing_key: routing_key)
    queues << queue
    threads[klass] = Thread.new do
      Pwwka::Receiver.subscribe(klass, queue_name, routing_key: routing_key)
    end
  end

  def kill_threads_and_clear_queues
    threads.each do |_,thread|
      Thread.kill(thread)
    end
    queues.each do |queue|
      queue.purge
      queue.delete
    end
  end

  def channel_connector
    @channel_connector ||= Pwwka::ChannelConnector.new
  end
  def channel
    channel_connector.channel
  end
  def topic_exchange
    channel_connector.topic_exchange
  end

end

Version data entries

46 entries across 46 versions & 1 rubygems

Version Path
pwwka-1.0.0 spec/integration/support/integration_test_setup.rb
pwwka-1.0.0.RC1 spec/integration/support/integration_test_setup.rb
pwwka-0.24.0 spec/integration/support/integration_test_setup.rb
pwwka-0.23.0 spec/integration/support/integration_test_setup.rb
pwwka-0.22.7 spec/integration/support/integration_test_setup.rb
pwwka-0.22.7.RC spec/integration/support/integration_test_setup.rb
pwwka-0.23.0.RC2 spec/integration/support/integration_test_setup.rb
pwwka-0.22.6 spec/integration/support/integration_test_setup.rb
pwwka-0.23.RC1 spec/integration/support/integration_test_setup.rb
pwwka-0.22.5 spec/integration/support/integration_test_setup.rb
pwwka-0.22.4 spec/integration/support/integration_test_setup.rb
pwwka-0.22.3 spec/integration/support/integration_test_setup.rb
pwwka-0.22.2 spec/integration/support/integration_test_setup.rb
pwwka-0.21.3 spec/integration/support/integration_test_setup.rb
pwwka-0.22.2.RC4 spec/integration/support/integration_test_setup.rb
pwwka-0.22.2.RC3 spec/integration/support/integration_test_setup.rb
pwwka-0.22.2.RC2 spec/integration/support/integration_test_setup.rb
pwwka-0.22.0.RC2 spec/integration/support/integration_test_setup.rb
pwwka-0.22.0.RC spec/integration/support/integration_test_setup.rb
pwwka-0.21.2 spec/integration/support/integration_test_setup.rb