Author: timbo
Date: Wed Sep 14 02:46:37 2011
New Revision: 14933
Modified:
dbi/trunk/t/08keeperr.t
Log:
Remove TODO from RT64330 ping_keeps_err test. Polish up the test
Modified: dbi/trunk/t/08keeperr.t
==============================================================================
--- dbi/trunk/t/08keeperr.t (original)
+++ dbi/trunk/t/08keeperr.t Wed Sep 14 02:46:37 2011
@@ -71,13 +71,23 @@
# test ping does not destroy the errstr
sub ping_keeps_err {
- my $dbh = DBI->connect('DBI:Sponge:');
- $dbh->{PrintError} = 0;
- eval {$dbh->do(q/invalid sql statement/)};
- ok(defined($dbh->errstr), "Error from invalid SQL");
- ok($dbh->ping, "ping returns true"); # for me this returns false!
- ok(defined($dbh->errstr), "Error exists after ping");
+ my $dbh = DBI->connect('DBI:ExampleP:', undef, undef, { PrintError => 0 });
+
+ $dbh->set_err(42, "ERROR 42");
+ is $dbh->err, 42;
+ is $dbh->errstr, "ERROR 42";
+ ok $dbh->ping, "ping returns true";
+ is $dbh->err, 42, "err unchanged after ping";
+ is $dbh->errstr, "ERROR 42", "errstr unchanged after ping";
+
$dbh->disconnect;
+
+ $dbh->set_err(42, "ERROR 42");
+ is $dbh->err, 42, "err unchanged after ping";
+ is $dbh->errstr, "ERROR 42", "errstr unchanged after ping";
+ ok !$dbh->ping, "ping returns false";
+ is $dbh->err, 42, "err unchanged after ping";
+ is $dbh->errstr, "ERROR 42", "errstr unchanged after ping";
}
## ----------------------------------------------------------------------------
@@ -273,10 +283,7 @@
is($dbh->state, "OV123", '... $dbh->state is as we expected');
$dbh->disconnect;
-TODO: {
- local $TODO = "rt64330 is not fixed yet";
- ping_keeps_err();
-};
+ping_keeps_err();
1;
# end