From d7392cad470f5809475ccb731e6a229a0bc9504d Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Mon, 6 Jul 2020 11:43:25 +0100 Subject: [PATCH] Bug 21468: Unit tests for AddIssue This patch adds a unit test for the addition of a call to the _after_circ_action hook in AddIssue. Signed-off-by: Tomas Cohen Arazi Signed-off-by: Jonathan Druart --- t/db_dependent/Koha/Plugins/Circulation_hooks.t | 29 ++++++++++++++++------ 1 files changed, 21 insertions(+), 8 deletions(-) diff --git a/t/db_dependent/Koha/Plugins/Circulation_hooks.t b/t/db_dependent/Koha/Plugins/Circulation_hooks.t index 54f21f3..a081af1 100755 --- a/t/db_dependent/Koha/Plugins/Circulation_hooks.t +++ b/t/db_dependent/Koha/Plugins/Circulation_hooks.t @@ -44,7 +44,7 @@ t::lib::Mocks::mock_config( 'enable_plugins', 1 ); subtest 'after_circ_action() hook tests' => sub { - plan tests => 1; + plan tests => 2; $schema->storage->txn_begin; @@ -53,7 +53,7 @@ subtest 'after_circ_action() hook tests' => sub { my $plugin = Koha::Plugin::Test->new->enable; - my $patron = $builder->build_object({ class => 'Koha::Patrons' }); + my $patron = $builder->build_object( { class => 'Koha::Patrons' } ); t::lib::Mocks::mock_userenv( { @@ -64,16 +64,29 @@ subtest 'after_circ_action() hook tests' => sub { # Avoid testing useless warnings my $test_plugin = Test::MockModule->new('Koha::Plugin::Test'); - $test_plugin->mock( 'after_item_action', undef ); + $test_plugin->mock( 'after_item_action', undef ); $test_plugin->mock( 'after_biblio_action', undef ); my $biblio = $builder->build_sample_biblio(); - my $item = $builder->build_sample_item({ biblionumber => $biblio->biblionumber }); - AddIssue( $patron->unblessed, $item->barcode ); + my $item = + $builder->build_sample_item( { biblionumber => $biblio->biblionumber } ); - warning_like { AddRenewal( $patron->borrowernumber, $item->id, $patron->branchcode ); } - qr/after_circ_action called with action: renewal, ref: Koha::Checkout/, - 'AddRenewal calls the after_circ_action hook'; + subtest 'AddIssue' => sub { + plan tests => 1; + + warning_like { AddIssue( $patron->unblessed, $item->barcode ); } + qr/after_circ_action called with action: checkout, ref: DateTime/, + 'AddIssue calls the after_circ_action hook'; + + }; + + subtest 'AddRenewal' => sub { + plan tests => 1; + + warning_like { AddRenewal( $patron->borrowernumber, $item->id, $patron->branchcode ); } + qr/after_circ_action called with action: renewal, ref: Koha::Checkout/, + 'AddRenewal calls the after_circ_action hook'; + }; $schema->storage->txn_rollback; Koha::Plugins::Methods->delete; -- 1.7.2.5