Fix TODO tests to only mark exactly the failing tests as TODO
[dbsrgits/DBIx-Class.git] / t / 752sqlite.t
index 272021b..1895a9f 100644 (file)
@@ -96,7 +96,7 @@ DDL
   );
   ok ($schema->storage->connected, 'Still connected');
   {
-    local $TODO = 'SQLite is retarded wrt detecting COMMIT' if $c_commit;
+    local $TODO = 'SQLite is retarded wrt detecting COMMIT' if $c_commit and ! $c_begin;
     ok ($schema->storage->_dbh->{AutoCommit}, "DBD aware txn ended with comments on $prefix_comment");
   }
 
@@ -106,10 +106,11 @@ DDL
     # this never worked in the 1st place
     local $TODO = 'SQLite is retarded wrt detecting COMMIT' if ! $c_begin and $c_commit;
 
+    # odd argument passing, because such nested crefs leak on 5.8
     lives_ok {
       $schema->storage->txn_do (sub {
-        ok ($ars->find({ name => $artist->name }), "Artist still where we left it after cycle with comments on $prefix_comment");
-      });
+        ok ($_[0]->find({ name => $_[1] }), "Artist still where we left it after cycle with comments on $prefix_comment");
+      }, $ars, $artist->name );
     } "Succesfull transaction with comments on $prefix_comment";
   }
 }