Sha256: 3967eb6d37e46b7b5731a3256ba1ec77fec534c60f42270dc116a5f90fa2ada6

Contents?: true

Size: 1.26 KB

Versions: 2

Compression:

Stored size: 1.26 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__), 'spec_helper'))

describe DataObjects::Transaction do
  before :each do
    @connection = double('connection')
    expect(DataObjects::Connection).to receive(:new).with('mock://mock/mock').once.and_return(@connection)
    @transaction = DataObjects::Transaction.new('mock://mock/mock')
  end

  it 'has a HOST constant' do
    expect(DataObjects::Transaction::HOST).not_to eq nil?
  end

  describe '#initialize' do
    it 'provides a connection' do
      expect(@transaction.connection).to eq @connection
    end
    it 'provides an id' do
      expect(@transaction.id).not_to be_nil
    end
    it 'provides a unique id' do
      expect(DataObjects::Connection).to receive(:new).with('mock://mock/mock2').once.and_return(@connection)
      expect(@transaction.id).not_to eq DataObjects::Transaction.new('mock://mock/mock2').id
    end
  end
  describe '#close' do
    it 'closes its connection' do
      expect(@connection).to receive(:close).once
      expect { @transaction.close }.not_to raise_error
    end
  end
  %i(prepare commit_prepared rollback_prepared).each do |meth|
    it "raises NotImplementedError on #{meth}" do
      expect { @transaction.send(meth) }.to raise_error(NotImplementedError)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
sbf-data_objects-0.11.0 spec/transaction_spec.rb
sbf-data_objects-0.10.17 spec/transaction_spec.rb