Sha256: 7bdcaecb57ab8367d9f96329a21b05ad6a4059e1569ecbbf9db1b7930bd71de4

Contents?: true

Size: 1.39 KB

Versions: 7

Compression:

Stored size: 1.39 KB

Contents

require 'spec_helper'
module Queuel
  describe Client do
    subject { described_class.new IronMq::Engine, {} }

    it { should respond_to :push }
    it { should respond_to :pop }
    it { should respond_to :receive }
    it { should respond_to :size }
    it { should respond_to :with }

    describe "fails without a queue" do
      it "fails for push" do
        expect { subject.push }.to raise_error NoQueueGivenError
      end

      it "fails for pop" do
        expect { subject.pop }.to raise_error NoQueueGivenError
      end

      it "fails for receive" do
        expect { subject.receive }.to raise_error NoQueueGivenError
      end
    end

    describe "fails without a valid name queue" do
      subject { described_class.new(IronMq::Engine, {}).with "    " }

      it "fails for push" do
        expect { subject.push }.to raise_error NoQueueGivenError
      end

      it "fails for pop" do
        expect { subject.pop }.to raise_error NoQueueGivenError
      end

      it "fails for receive" do
        expect { subject.receive }.to raise_error NoQueueGivenError
      end
    end

    describe "queue swapping" do
      before do
        Queuel.stub default_queue: "default"
      end

      it "can swap queues easily" do
        subject.queue.should == "default"
        subject.with(:new_queue).queue.should == "new_queue"
        subject.queue.should == "default"
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
queuel-0.4.8 spec/lib/queuel/client_spec.rb
queuel-0.4.6 spec/lib/queuel/client_spec.rb
queuel-0.4.5 spec/lib/queuel/client_spec.rb
queuel-0.4.4 spec/lib/queuel/client_spec.rb
queuel-0.4.3 spec/lib/queuel/client_spec.rb
queuel-0.4.2 spec/lib/queuel/client_spec.rb
queuel-0.4.1 spec/lib/queuel/client_spec.rb