Sha256: 6d94120df7f19cb01bc4faba071235d09091452e71605819de7efd427981b68d
Contents?: true
Size: 1.68 KB
Versions: 1
Compression:
Stored size: 1.68 KB
Contents
shared_examples_for "basic user operations" do before do transactioner do |trans| 100.times do |count| user = User.new(username: "User #{count}", email: "user#{count}@example.com") trans.save!(user) end end end it "can create a lot of models" do expect(User.count).to eq 100 end it "can both insert and update a lot of records correct" do transactioner do |trans| 200.times do |count| user = User.find_or_initialize_by(email: "user#{count}@example.com") user.username = "User upsert #{count}" trans.save!(user) end end count = 0 User.find_each do |user| expect(user.email).to eq "user#{count}@example.com" count += 1 end expect(User.count).to eq 200 end it "#update_columns" do transactioner do |trans| count = 0 User.find_each do |user| trans.update_columns(user, email: "test#{count}@example.com") count += 1 end end count = 0 User.find_each do |user| expect(user.email).to eq "test#{count}@example.com" count += 1 end expect(User.count).to eq 100 end it "can delete a lot of records" do transactioner do |trans| User.limit(50).each do |user| trans.destroy!(user) end end expect(User.count).to eq 50 end it "does bulk inserts" do User.delete_all transactioner do |trans| 300.times do |count| trans.bulk_create!(User.new(email: "test#{count}@example.com")) end end count = 0 User.order(:id).each do |user| expect(user.email).to eq "test#{count}@example.com" count += 1 end expect(count).to eq 300 end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
active-record-transactioner-0.0.7 | spec/support/basic_user_operations.rb |