Sha256: bb841925185dbb7dfab40ff2764150103a3e5644db0a73d3cbdf137eb8a6921a

Contents?: true

Size: 982 Bytes

Versions: 15

Compression:

Stored size: 982 Bytes

Contents

require 'spec_helper'

describe "transaction" do
  before(:all) do
    reload_turntable!(File.join(File.dirname(__FILE__), "../../config/turntable.yml"))
  end

  before(:each) do
    establish_connection_to(:test)
    truncate_shard
  end
  let(:clusters) { ActiveRecord::Base.turntable_clusters }

  describe "all_cluster_transaction" do
    let(:all_clusters) { clusters.values }
    let(:shards) { all_clusters.map { |c| c.shards.values }.flatten(1) }

    it "all shards should begin transaction" do
      User.all_cluster_transaction {
        expect(shards.map(&:connection).map(&:open_transactions)).to all(be == 1)
      }
    end
  end

  describe "cluster_transaction" do
    let(:cluster) { clusters[:user_cluster] }
    let(:shards) { cluster.shards.values }

    it "all shards in the cluster should begin transaction" do
      User.user_cluster_transaction {
        expect(shards.map(&:connection).map(&:open_transactions)).to all(be == 1)
      }
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
activerecord-turntable-2.5.0 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.4.0 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.3.3 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.3.2 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.3.1 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.3.0 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.2.2 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.2.1 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.2.0 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.1 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.0 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.0.rc2 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.0.rc1 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.0.beta2 spec/active_record/turntable/transaction_spec.rb
activerecord-turntable-2.1.0.beta1 spec/active_record/turntable/transaction_spec.rb