Sha256: 54f7c6edbd37298caa23499d236dad9312f741de28192048891f9770af663ee2

Contents?: true

Size: 1 KB

Versions: 1

Compression:

Stored size: 1 KB

Contents

require 'spec_helper'
require 'integration/eventmachine/spec_helper'

describe AMQ::Client::EventMachineClient, "Channel#flow" do
  include EventedSpec::SpecHelper
  default_timeout 1

  it "controls channel flow state" do
    em_amqp_connect do |client|
      flow_states = []

      channel = AMQ::Client::Channel.new(client, 1)
      channel.open do
        AMQ::Client::Queue.new(client, channel).declare(false, false, false, true) do |amq_method|
          channel.flow_is_active?.should be_true

          channel.flow(false) do |flow_status1|
            channel.flow_is_active?.should be_false
            flow_states << channel.flow_is_active?

            channel.flow(true) do |flow_status2|
              channel.flow_is_active?.should be_true
              flow_states << channel.flow_is_active?
            end # channel.flow
          end # channel.flow
        end # Queue.new
      end # channel.open

      done(0.5) { flow_states.should == [false, true] }
    end # em_amqp_connect
  end # it
end # describe

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
amq-client-0.5.0 spec/integration/eventmachine/channel_flow_spec.rb