1
0
Fork 0
mirror of https://github.com/DBD-SQLite/DBD-SQLite synced 2025-06-07 22:28:47 -04:00

Capture, test and squelch the warning

This commit is contained in:
Adam Kennedy 2009-04-07 23:26:48 +00:00
parent be2e535f53
commit ac243161a9

View file

@ -6,15 +6,26 @@ BEGIN {
$^W = 1; $^W = 1;
} }
use Test::More tests => 2; use Test::More tests => 4;
use t::lib::Test; use t::lib::Test;
my $dbh = connect_ok( PrintError => 0, RaiseError => 1 ); my $dbh = connect_ok( PrintError => 0, RaiseError => 1 );
my $sth = $dbh->prepare('CREATE TABLE foo (f)'); my $sth = $dbh->prepare('CREATE TABLE foo (f)');
$dbh->disconnect;
$dbh->disconnect;
# attempt to execute on inactive database handle # attempt to execute on inactive database handle
my $ret = eval { $sth->execute; }; my @warning = ();
SCOPE: {
local $SIG{__WARN__} = sub { push @warning, @_; return };
my $ret = eval { $sth->execute; };
ok ! defined $ret;
}
ok !defined $ret; is( scalar(@warning), 1, 'Got 1 warning' );
like(
$warning[0],
qr/attempt to execute on inactive database handle/,
'Got the expected warning',
);