X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fcdbi%2F98-failure.t;h=918bbf5a22a3f5df7f90b47a5cada4ead3689546;hb=68de943862f06cabd397d2e74d12cd9cdc999779;hp=921734217630203792135107e83a43ccdc56762f;hpb=50891152d0b24649bfd67bdba97feec86b11c064;p=dbsrgits%2FDBIx-Class.git diff --git a/t/cdbi/98-failure.t b/t/cdbi/98-failure.t index 9217342..918bbf5 100644 --- a/t/cdbi/98-failure.t +++ b/t/cdbi/98-failure.t @@ -9,10 +9,8 @@ BEGIN { eval "use DBIx::Class::CDBICompat;"; if ($@) { plan (skip_all => 'Class::Trigger and DBIx::ContextualFetch required'); - next; } - eval "use DBD::SQLite"; - plan $@ ? (skip_all => 'needs DBD::SQLite for testing') : (tests => 7); + plan tests => 7; } use lib 't/cdbi/testlib'; @@ -21,42 +19,42 @@ use Film; Film->create_test_film; { - my $btaste = Film->retrieve('Bad Taste'); - isa_ok $btaste, 'Film', "We have Bad Taste"; - { - no warnings 'redefine'; - local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; - eval { $btaste->delete }; - ::like $@, qr/Database died/s, "We failed"; - } - my $still = Film->retrieve('Bad Taste'); - isa_ok $btaste, 'Film', "We still have Bad Taste"; + my $btaste = Film->retrieve('Bad Taste'); + isa_ok $btaste, 'Film', "We have Bad Taste"; + { + no warnings 'redefine'; + local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; + eval { $btaste->delete }; + ::like $@, qr/Database died/s, "We failed"; + } + my $still = Film->retrieve('Bad Taste'); + isa_ok $btaste, 'Film', "We still have Bad Taste"; } { - my $btaste = Film->retrieve('Bad Taste'); - isa_ok $btaste, 'Film', "We have Bad Taste"; - $btaste->numexplodingsheep(10); - { - no warnings 'redefine'; - local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; - eval { $btaste->update }; - ::like $@, qr/Database died/s, "We failed"; - } - $btaste->discard_changes; - my $still = Film->retrieve('Bad Taste'); - isa_ok $btaste, 'Film', "We still have Bad Taste"; - is $btaste->numexplodingsheep, 1, "with 1 sheep"; + my $btaste = Film->retrieve('Bad Taste'); + isa_ok $btaste, 'Film', "We have Bad Taste"; + $btaste->numexplodingsheep(10); + { + no warnings 'redefine'; + local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; + eval { $btaste->update }; + ::like $@, qr/Database died/s, "We failed"; + } + $btaste->discard_changes; + my $still = Film->retrieve('Bad Taste'); + isa_ok $btaste, 'Film', "We still have Bad Taste"; + is $btaste->numexplodingsheep, 1, "with 1 sheep"; } if (0) { - my $sheep = Film->maximum_value_of('numexplodingsheep'); - is $sheep, 1, "1 exploding sheep"; - { - local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; - my $sheep = eval { Film->maximum_value_of('numexplodingsheep') }; - ::like $@, qr/select.*Database died/s, - "Handle database death in single value select"; - } + my $sheep = Film->maximum_value_of('numexplodingsheep'); + is $sheep, 1, "1 exploding sheep"; + { + local *DBIx::ContextualFetch::st::execute = sub { die "Database died" }; + my $sheep = eval { Film->maximum_value_of('numexplodingsheep') }; + ::like $@, qr/select.*Database died/s, + "Handle database death in single value select"; + } }