Sha256: 64faf9a32a36fa0b6dec33404ea29e13281c0a58c6e46f73a5f595a1522ec61a

Contents?: true

Size: 1.37 KB

Versions: 6

Compression:

Stored size: 1.37 KB

Contents

require 'spec_helper'

describe QuickbooksWebConnector do

  before do
    @original_redis = described_class.redis
  end

  after do
    described_class.redis = @original_redis
  end

  it 'can set a namespace through a url-like string' do
    expect(described_class.redis.namespace).to eq(:qwc)
    described_class.redis = 'localhost:9736/namespace'
    expect(described_class.redis.namespace).to eq('namespace')
  end

  it 'can set a namespace with a Redis::Namespace argument' do
    new_redis = Redis.new(host: 'localhost', port: 9736)
    new_namespace = Redis::Namespace.new('namespace', redis: new_redis)
    described_class.redis = new_namespace
    expect(described_class.redis).to eq(new_namespace)
  end

  it 'can enqueue jobs' do
    expect(described_class.size).to eq(0)
    described_class.enqueue SomeBuilder, SomeHandler, 1, '/tmp'

    job = described_class.reserve

    expect(job).to be_a_kind_of(described_class::Job)
    expect(job.request_builder_class).to eq(SomeBuilder)
    expect(job.response_handler_class).to eq(SomeHandler)
    expect(job.args[0]).to eq 1
    expect(job.args[1]).to eq '/tmp'

    expect(described_class.reserve).to be_nil
  end

  it 'can peek at the queue' do
    described_class.push('name' => 'chris')
    expect(described_class.size).to eq(1)
    expect(described_class.peek).to eq('name' => 'chris')
    expect(described_class.size).to eq(1)
  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
quickbooks_web_connector-0.3.0 spec/lib/quickbooks_web_connector_spec.rb
quickbooks_web_connector-0.2.0 spec/lib/quickbooks_web_connector_spec.rb
quickbooks_web_connector-0.1.0 spec/lib/quickbooks_web_connector_spec.rb
quickbooks_web_connector-0.0.6 spec/lib/quickbooks_web_connector_spec.rb
quickbooks_web_connector-0.0.5 spec/lib/quickbooks_web_connector_spec.rb
quickbooks_web_connector-0.0.4 spec/lib/quickbooks_web_connector_spec.rb