Sha256: 0b3a6b8f88e37c8a45d3c2760cf9e6ec76553b2cda21e0025c9913ad368fac52

Contents?: true

Size: 1.4 KB

Versions: 11

Compression:

Stored size: 1.4 KB

Contents

require 'spec_helper'

describe Backend do
  it "should have register backends" do
    Quebert.backends.keys.should include(:in_process, :beanstalk, :sync)
  end
  
  it "should register backends" do
    Quebert.backends.register :twenty, 20
    Quebert.backends[:twenty].should eql(20)
  end
  
  it "should unregister backends" do
    Quebert.backends.unregister :twenty
    Quebert.backends[:twenty].should be_nil
  end
end

describe Backend::InProcess do
  before(:all) do
    @q = Backend::InProcess.new
  end
  
  it "should put on queue" do
    3.times do |num|
      @q.put Adder.new(num)
    end
  end
  
  it "should consume from queue" do
    3.times do |num|
      @q.reserve.perform.should eql(num)
    end
  end
end

describe Backend::Beanstalk  do
  before(:all) do
    @q = Backend::Beanstalk.new('localhost:11300','quebert-test')
    @q.drain!
  end
  
  it "should put on queue" do
    3.times do |num|
      @q.put Adder.new(num)
    end
  end
  
  it "should consume from queue" do
    3.times do |num|
      @q.reserve.perform.should eql(num)
    end
  end
end

describe Backend::Sync do
  before(:all) do
    @q = Backend::Sync.new
  end
  
  it "should put on queue" do
    3.times do |num|
      @q.put(Adder.new(num)).should eql(num)
    end
  end
  
  it "should consume from queue" do
    3.times do |num|
      lambda{
        @q.reserve.perform.should eql(num)
      }.should raise_exception
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
quebert-2.0.1 spec/backend_spec.rb
quebert-2.0.0 spec/backend_spec.rb
quebert-1.12.0 spec/backend_spec.rb
quebert-1.11.0 spec/backend_spec.rb
quebert-1.0.9 spec/backend_spec.rb
quebert-1.0.8 spec/backend_spec.rb
quebert-1.0.7 spec/backend_spec.rb
quebert-1.0.6 spec/backend_spec.rb
quebert-1.0.5 spec/backend_spec.rb
quebert-1.0.4 spec/backend_spec.rb
quebert-1.0.2 spec/backend_spec.rb