Sha256: f09e7da25acb07ae7665539537423c92c9cacb692add27e663e1de8336244321

Contents?: true

Size: 1.76 KB

Versions: 24

Compression:

Stored size: 1.76 KB

Contents

# encoding: utf-8

require "spec_helper"
require "amq/client/mixins/status"

describe AMQ::Client::StatusMixin do
  subject do
    Class.new { include AMQ::Client::StatusMixin }.new
  end

  describe "#status=" do
    context "if it is in the permitted values" do
      it "should be able to store status" do
        lambda { subject.status = :opened }.should_not raise_error
      end
    end

    context "when given value isn't in the permitted values" do
      it "should raise ImproperStatusError" do
        lambda { subject.status = :sleepy }.should raise_error(AMQ::Client::StatusMixin::ImproperStatusError)
      end
    end
  end

  describe "#opened?" do
    it "should be true if the status is :opened" do
      subject.status = :opened
      subject.should be_opened
    end

    it "should be false if the status isn't :opened" do
      subject.status = :opening
      subject.should_not be_opened
    end
  end

  describe "#closed?" do
    it "should be true if the status is :closed" do
      subject.status = :closed
      subject.should be_closed
    end

    it "should be false if the status isn't :closed" do
      subject.status = :closing
      subject.should_not be_closed
    end
  end

  describe "#opening?" do
    it "should be true if the status is :opening" do
      subject.status = :opening
      subject.should be_opening
    end

    it "should be false if the status isn't :opening" do
      subject.status = :opened
      subject.should_not be_opening
    end
  end

  describe "#closing?" do
    it "should be true if the status is :closing" do
      subject.status = :closing
      subject.should be_closing
    end

    it "should be false if the status isn't :closing" do
      subject.status = :opening
      subject.should_not be_closing
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
amq-client-0.7.0.alpha23 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha22 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha21 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha20 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha19 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha18 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha17 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha16 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha15 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha14 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha13 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha12 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha11 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha10 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha9 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha8 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha7 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha6 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha5 spec/unit/client/mixins/status_spec.rb
amq-client-0.7.0.alpha4 spec/unit/client/mixins/status_spec.rb