@@ -361,32 +361,35 @@ describe Crecto do
361
361
end
362
362
{% end % }
363
363
364
- it " allows nesting transactions" do
365
- Repo .delete_all(Post )
366
- Repo .delete_all(User )
364
+ # Sqlite doesn't support nesting transactions
365
+ {% unless flag?(:sqlite ) % }
366
+ it " allows nesting transactions" do
367
+ Repo .delete_all(Post )
368
+ Repo .delete_all(User )
367
369
368
- insert_user = User .new
369
- insert_user.name = " nested_transactions_insert_user"
370
- invalid_user = User .new
371
- delete_user = quick_create_user(" nested_transactions_delete_user" )
370
+ insert_user = User .new
371
+ insert_user.name = " nested_transactions_insert_user"
372
+ invalid_user = User .new
373
+ delete_user = quick_create_user(" nested_transactions_delete_user" )
372
374
373
- Repo .transaction! do |tx |
374
- tx.insert!(insert_user)
375
+ Repo .transaction! do |tx |
376
+ tx.insert!(insert_user)
375
377
376
- expect_raises Crecto ::InvalidChangeset do
377
- Repo .transaction! do |inner_tx |
378
- inner_tx.delete!(delete_user)
379
- inner_tx.insert!(invalid_user)
378
+ expect_raises Crecto ::InvalidChangeset do
379
+ Repo .transaction! do |inner_tx |
380
+ inner_tx.delete!(delete_user)
381
+ inner_tx.insert!(invalid_user)
382
+ end
380
383
end
381
384
end
382
- end
383
385
384
- # check insert happened
385
- Repo .all(User , Query .where(name: " nested_transactions_insert_user" )).size.should eq 1
386
+ # check insert happened
387
+ Repo .all(User , Query .where(name: " nested_transactions_insert_user" )).size.should eq 1
386
388
387
- # check delete didn't happen
388
- Repo .all(User , Query .where(name: " nested_transactions_delete_user" )).size.should eq 1
389
- end
389
+ # check delete didn't happen
390
+ Repo .all(User , Query .where(name: " nested_transactions_delete_user" )).size.should eq 1
391
+ end
392
+ {% end % }
390
393
end
391
394
end
392
395
end
0 commit comments