Bug 14945: Add 2 more tests for StoreLastBorrower
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Wed, 9 Dec 2015 10:24:15 +0000 (10:24 +0000)
committerBrendan Gallagher <brendan@bywatersolutions.com>
Thu, 31 Dec 2015 19:32:20 +0000 (19:32 +0000)
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
t/db_dependent/Circulation/AnonymiseIssueHistory.t

index 87049ad..5735f86 100644 (file)
@@ -164,7 +164,7 @@ subtest 'AnonymousPatron is not defined' => sub {
 };
 
 subtest 'Test StoreLastBorrower' => sub {
-    plan tests => 4;
+    plan tests => 6;
 
     t::lib::Mocks::mock_preference( 'StoreLastBorrower', '1' );
 
@@ -241,6 +241,32 @@ subtest 'Test StoreLastBorrower' => sub {
     my $patron_object2 = $item_object->last_returned_by();
     is( $patron_object->id, $patron_object2->id,
         'Calling last_returned_by with Borrower object sets last_returned_by to that borrower' );
+
+    $patron_object->delete;
+    $item_object = Koha::Items->find( $item->{itemnumber} );
+    is( $item_object->last_returned_by, undef, 'last_returned_by should return undef if the last patron to return the item has been deleted' );
+
+    t::lib::Mocks::mock_preference( 'StoreLastBorrower', '0' );
+    $patron = $builder->build(
+        {
+            source => 'Borrower',
+            value  => { privacy => 1, }
+        }
+    );
+
+    $issue = $builder->build(
+        {
+            source => 'Issue',
+            value  => {
+                borrowernumber => $patron->{borrowernumber},
+                itemnumber     => $item->{itemnumber},
+            },
+        }
+    );
+    ( $returned, undef, undef ) = C4::Circulation::AddReturn( $item->{barcode}, undef, undef, undef, '2010-10-10' );
+
+    $item_object   = Koha::Items->find( $item->{itemnumber} );
+    is( $item_object->last_returned_by, undef, 'Last patron to return item should not be stored if StoreLastBorrower if off' );
 };
 
 $schema->storage->txn_rollback;