From 1aee257306fcd8a8a92cc92227a0632a6f7bc07a Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 6 Jun 2019 10:37:11 -0400 Subject: [PATCH] Bug 23057: Unit tests --- t/db_dependent/SIP/Message.t | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/t/db_dependent/SIP/Message.t b/t/db_dependent/SIP/Message.t index 499c2b6748..03e41c8d88 100755 --- a/t/db_dependent/SIP/Message.t +++ b/t/db_dependent/SIP/Message.t @@ -67,7 +67,7 @@ subtest 'Testing Patron Info Request V2' => sub { subtest 'Checkin V2' => sub { my $schema = Koha::Database->new->schema; $schema->storage->txn_begin; - plan tests => 27; + plan tests => 29; $C4::SIP::Sip::protocol_version = 2; test_checkin_v2(); $schema->storage->txn_rollback; @@ -292,7 +292,8 @@ sub test_request_patron_info_v2 { sub test_checkin_v2 { my $builder = t::lib::TestBuilder->new(); - my $branchcode = $builder->build({ source => 'Branch' })->{branchcode}; + my $branchcode = $builder->build({ source => 'Branch' })->{branchcode}; + my $branchcode2 = $builder->build({ source => 'Branch' })->{branchcode}; my ( $response, $findpatron ); my $mocks = create_mocks( \$response, \$findpatron, \$branchcode ); @@ -310,6 +311,7 @@ sub test_checkin_v2 { source => 'Item', value => { damaged => 0, withdrawn => 0, itemlost => 0, restricted => 0, homebranch => $branchcode, holdingbranch => $branchcode }, }); + my $item_object = Koha::Items->find( $item->{itemnumber} ); my $mockILS = $mocks->{ils}; my $server = { ils => $mockILS, account => {} }; @@ -360,9 +362,18 @@ sub test_checkin_v2 { is( substr($response,2,1), '1', 'OK flag is true now with checked_in_ok flag set when checking in an item that was not checked out' ); is( substr($response,5,1), 'N', 'Alert flag no longer set' ); check_field( $respcode, $response, FID_SCREEN_MSG, undef, 'No screen msg' ); - $server->{account}->{checked_in_ok} = 0; - $server->{account}->{checked_in_ok} = 1; + # Move item to another holding branch to trigger CV of 04 with alert flag + t::lib::Mocks::mock_preference( 'AllowReturnToBranch', 'holdingbranch' ); + $item_object->holdingbranch( $branchcode2 )->store(); + undef $response; + $msg = C4::SIP::Sip::MsgType->new( $siprequest, 0 ); + $msg->handle_checkin( $server ); + is( substr($response,5,1), 'Y', 'Alert flag is set with check_in_ok, item is checked in but needs transfer' ); + check_field( $respcode, $response, FID_ALERT_TYPE, '04', 'Got FID_ALERT_TYPE (CV) field with value 04 ( needs transfer )' ); + $item_object->holdingbranch( $branchcode )->store(); + t::lib::Mocks::mock_preference( ' AllowReturnToBranch ', 'anywhere' ); + $server->{account}->{cv_send_00_on_success} = 0; undef $response; $msg = C4::SIP::Sip::MsgType->new( $siprequest, 0 ); -- 2.20.1 (Apple Git-117)