Bug 16561 - Bug 15877 followup to fix tests
authorNick Clemens <nick@bywatersolutions.com>
Sat, 21 May 2016 23:59:07 +0000 (19:59 -0400)
committerKyle M Hall <kyle@bywatersolutions.com>
Mon, 23 May 2016 16:53:51 +0000 (16:53 +0000)
When I altered the tests to avoid accidental deletion of all items, I
didn't rollback the transaction, hence the tests now delete all items
from a db when run.

This patch rollsback the transaction so items are not deleted from your db

To test:
1 - Backup your db
2 - prove -v t/db_dependent/Barcodes.t
3 - Note that all items and issues are deleted from the DB
4 - Restore your DB
5 - Apply this patch
6 - prove -v t/db_dependent/Barcodes.t
7 - Your DB should eb unchanged

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
t/db_dependent/Barcodes.t

index e7a74a0..199de9f 100755 (executable)
@@ -32,17 +32,15 @@ BEGIN {
     use_ok('C4::Barcodes');
 }
 
-my $schema  = Koha::Database->new->schema;
-$schema->storage->txn_begin;
-
 my $builder = t::lib::TestBuilder->new;
 
-my $dbh = C4::Context->dbh;
+my $schema  = Koha::Database->new->schema;
 
 subtest 'Test generation of annual barcodes from DB values' => sub {
 
     plan tests => 4;
 
+    $schema->storage->txn_begin;
     $builder->schema->resultset( 'Issue' )->delete_all;
     $builder->schema->resultset( 'Item' )->delete_all;
 
@@ -83,6 +81,7 @@ subtest 'Test generation of annual barcodes from DB values' => sub {
     $schema->storage->txn_rollback;
 };
 
+$schema->storage->txn_begin;
 
 $builder->schema->resultset( 'Issue' )->delete_all;
 $builder->schema->resultset( 'Item' )->delete_all;
@@ -171,3 +170,5 @@ foreach $format (@formats) {
         }
     }
 }
+
+$schema->storage->txn_rollback;