[Bast-commits] r6322 - DBIx-Class/0.08/branches/joined_count/t

ribasushi at dev.catalyst.perl.org ribasushi at dev.catalyst.perl.org
Tue May 19 17:26:22 GMT 2009


Author: ribasushi
Date: 2009-05-19 17:26:21 +0000 (Tue, 19 May 2009)
New Revision: 6322

Modified:
   DBIx-Class/0.08/branches/joined_count/t/72pg.t
Log:
Make sure pg test can restart after half-way failures

Modified: DBIx-Class/0.08/branches/joined_count/t/72pg.t
===================================================================
--- DBIx-Class/0.08/branches/joined_count/t/72pg.t	2009-05-19 17:07:08 UTC (rev 6321)
+++ DBIx-Class/0.08/branches/joined_count/t/72pg.t	2009-05-19 17:26:21 UTC (rev 6322)
@@ -72,6 +72,8 @@
 $schema->source("SequenceTest")->name("testschema.sequence_test");
 {
     local $SIG{__WARN__} = sub {};
+    _cleanup ($dbh);
+
     $dbh->do("CREATE SCHEMA testschema;");
     $dbh->do("CREATE TABLE testschema.artist (artistid serial PRIMARY KEY, name VARCHAR(100), rank INTEGER NOT NULL DEFAULT '13', charfield CHAR(10), arrayfield INTEGER[]);");
     $dbh->do("CREATE TABLE testschema.sequence_test (pkid1 integer, pkid2 integer, nonpkid integer, name VARCHAR(100), CONSTRAINT pk PRIMARY KEY(pkid1, pkid2));");
@@ -264,16 +266,21 @@
 my $st = $schema->resultset('SequenceTest')->create({ name => 'foo', pkid1 => 55 });
 is($st->pkid1, 55, "Oracle Auto-PK without trigger: First primary key set manually");
 
+sub _cleanup {
+  my $dbh = shift or return;
 
-END {
-    if($dbh) {
-        $dbh->do("DROP TABLE testschema.artist;");
-        $dbh->do("DROP TABLE testschema.casecheck;");
-        $dbh->do("DROP TABLE testschema.sequence_test;");
-        $dbh->do("DROP TABLE testschema.array_test;");
-        $dbh->do("DROP SEQUENCE pkid1_seq");
-        $dbh->do("DROP SEQUENCE pkid2_seq");
-        $dbh->do("DROP SEQUENCE nonpkid_seq");
-        $dbh->do("DROP SCHEMA testschema;");
-    }
+  for my $stat (
+    'DROP TABLE testschema.artist',
+    'DROP TABLE testschema.casecheck',
+    'DROP TABLE testschema.sequence_test',
+    'DROP TABLE testschema.array_test',
+    'DROP SEQUENCE pkid1_seq',
+    'DROP SEQUENCE pkid2_seq',
+    'DROP SEQUENCE nonpkid_seq',
+    'DROP SCHEMA testschema',
+  ) {
+    eval { $dbh->do ($stat) };
+  }
 }
+
+END { _cleanup($dbh) }




More information about the Bast-commits mailing list