Sha256: 299812746589b500d6816fab1ebf50334e75fd680b0e1c9168f1f149ee589e6d

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

require "spec_helper"
require "tmpdir"

describe "ActiveRecordTransactioner" do
  it "works" do
    require_relative "test_classes/active-record-transactioner-test-class"

    trans = ActiveRecordTransactioner.new(transaction_size: 2)

    model1 = ActiveRecordTransactionerTestClass.new
    model2 = ActiveRecordTransactionerTestClass.new
    model3 = ActiveRecordTransactionerTestClass.new

    trans.save!(model1)
    trans.save!(model2)

    trans.join

    model1.save_called.should eq true
    model2.save_called.should eq true
    model3.save_called.should eq false

    called = false
    ActiveRecordTransactioner.new do |trans|
      called = true
      trans.class.should eql(ActiveRecordTransactioner)
    end

    called.should eq true
  end

  it "should not fail under the Rails reverse bug" do
    trans = ActiveRecordTransactioner.new(transaction_size: 1)
    model1 = ActiveRecordTransactionerTestClass.new
    trans.save!(model1)
    trans.join

    ActiveRecordTransactionerTestClass::ARGS[:nilraise].should eq false
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
active-record-transactioner-0.0.6 spec/active-record-transactioner_spec.rb