Bug 21468: (QA follow-up) Enhance tests
authorTomas Cohen Arazi <tomascohen@theke.io>
Wed, 15 Jul 2020 05:26:20 +0000 (02:26 -0300)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Thu, 30 Jul 2020 15:30:24 +0000 (17:30 +0200)
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

t/db_dependent/Koha/Plugins/Circulation_hooks.t
t/lib/Koha/Plugin/Test.pm

index 97bee3d..6dcf0ef 100755 (executable)
@@ -22,7 +22,7 @@ use Test::Warn;
 
 use File::Basename;
 
-use C4::Circulation qw(AddIssue AddRenewal);
+use C4::Circulation qw(AddIssue AddRenewal AddReturn);
 
 use t::lib::Mocks;
 use t::lib::TestBuilder;
@@ -92,8 +92,7 @@ subtest 'after_circ_action() hook tests' => sub {
         plan tests => 1;
 
         warning_like {
-            AddReturn( $patron->borrowernumber, $item->id,
-                $patron->branchcode );
+            AddReturn( $item->barcode, $patron->branchcode );
         }
         qr/after_circ_action called with action: checkin, ref: DateTime/,
           'AddReturn calls the after_circ_action hook';
index 5125f71..3638fe2 100644 (file)
@@ -165,8 +165,27 @@ sub after_circ_action {
 
     my $action   = $params->{action};
     my $checkout = $params->{payload}->{checkout};
-
-    Koha::Exceptions::Exception->throw("after_circ_action called with action: $action, ref: " . ref($checkout));
+    my $payload  = $params->{payload};
+
+    my $renewal_library_id = $payload->{renewal_library_id};
+    my $charge             = $payload->{charge};
+    my $item_id            = $payload->{item_id};
+    my $item_type          = $payload->{item_type};
+    my $shelving_location  = $payload->{shelving_location};
+    my $patron_id          = $payload->{patron_id};
+    my $collection_code    = $payload->{collection_code};
+    my $date_due           = $payload->{date_due};
+    my $date_returned      = $payload->{date_returned};
+
+    if ( $action eq 'renewal' ) {
+        Koha::Exceptions::Exception->throw("after_circ_action called with action: $action, ref: " . ref($checkout));
+    }
+    elsif ( $action eq 'checkout') {
+        Koha::Exceptions::Exception->throw("after_circ_action called with action: $action, ref: " . ref($date_due));
+    }
+    elsif ( $action eq 'checkin' ) {
+        Koha::Exceptions::Exception->throw("after_circ_action called with action: $action, ref: " . ref($date_returned));
+    }
 }
 
 sub api_routes {