X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F752sqlite.t;h=008b7f11c2db3985ce9c2e49341e9bcd08900e16;hb=a524980e87f8d0063f051a4f949e0a4a20cd4a8f;hp=273a1ed5dc6ba07c4a140af7c1cff2490c3951e4;hpb=398215b170197df314fb0c40e0654c3a6860f19d;p=dbsrgits%2FDBIx-Class.git diff --git a/t/752sqlite.t b/t/752sqlite.t index 273a1ed..008b7f1 100644 --- a/t/752sqlite.t +++ b/t/752sqlite.t @@ -11,40 +11,6 @@ use lib qw(t/lib); use DBICTest; use DBIx::Class::_Util qw(sigwarn_silencer modver_gt_or_eq); -# savepoints test -{ - my $schema = DBICTest->init_schema(auto_savepoint => 1); - - my $ars = $schema->resultset('Artist'); - - # test two-phase commit and inner transaction rollback from nested transactions - $schema->txn_do(sub { - $ars->create({ name => 'in_outer_transaction' }); - $schema->txn_do(sub { - $ars->create({ name => 'in_inner_transaction' }); - }); - ok($ars->search({ name => 'in_inner_transaction' })->first, - 'commit from inner transaction visible in outer transaction'); - throws_ok { - $schema->txn_do(sub { - $ars->create({ name => 'in_inner_transaction_rolling_back' }); - die 'rolling back inner transaction'; - }); - } qr/rolling back inner transaction/, 'inner transaction rollback executed'; - $ars->create({ name => 'in_outer_transaction2' }); - }); - - ok($ars->search({ name => 'in_outer_transaction' })->first, - 'commit from outer transaction'); - ok($ars->search({ name => 'in_outer_transaction2' })->first, - 'second commit from outer transaction'); - ok($ars->search({ name => 'in_inner_transaction' })->first, - 'commit from inner transaction'); - is $ars->search({ name => 'in_inner_transaction_rolling_back' })->first, - undef, - 'rollback from inner transaction'; -} - # check that we work somewhat OK with braindead SQLite transaction handling # # As per https://metacpan.org/source/ADAMK/DBD-SQLite-1.37/lib/DBD/SQLite.pm#L921