Sha256: 91495425f81ba5c8e2aa58f1492b4ee64792a7d5940584a12e852b4fb7e563a8

Contents?: true

Size: 1001 Bytes

Versions: 8

Compression:

Stored size: 1001 Bytes

Contents

require 'spec_helper'

describe QuickbooksWebConnector::Job do

  describe '.queued' do
    it 'returns all queued jobs' do
      expect(described_class.queued.size).to be(0)

      described_class.create(SomeBuilder, SomeHandler, 12)
      described_class.create(SomeBuilder, SomeHandler, 31)

      expect(described_class.queued.size).to eq(2)
    end
  end

  it 'becomes a failure if building the request XML raises an exception' do
    SomeBuilder.stub(:perform).and_raise(Exception)
    job = described_class.new 'request_builder_class' => 'SomeBuilder'

    expect { job.request_xml }.to_not raise_exception

    expect(QuickbooksWebConnector::Failure.count).to be(1)
  end

  it 'becomes a failure if handling the response raises an exception' do
    SomeHandler.stub(:perform).and_raise(Exception)
    job = described_class.new 'response_handler_class' => 'SomeHandler'

    expect { job.perform }.to_not raise_exception

    expect(QuickbooksWebConnector::Failure.count).to be(1)
  end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
quickbooks_web_connector-0.5.0 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.4.0 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.3.0 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.2.0 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.1.0 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.0.6 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.0.5 spec/lib/quickbooks_web_connector/job_spec.rb
quickbooks_web_connector-0.0.4 spec/lib/quickbooks_web_connector/job_spec.rb