From 021d1d3714602be64609b9db82fd92e8bb1b42c0 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Mon, 4 Sep 2017 14:14:31 -0300 Subject: [PATCH] Bug 19116: Unit tests Signed-off-by: Kyle M Hall Signed-off-by: Tomas Cohen Arazi Signed-off-by: Jonathan Druart --- t/db_dependent/Circulation.t | 49 +++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t index 34728d3f6f..90859ade5a 100755 --- a/t/db_dependent/Circulation.t +++ b/t/db_dependent/Circulation.t @@ -17,7 +17,7 @@ use Modern::Perl; -use Test::More tests => 100; +use Test::More tests => 101; use DateTime; @@ -1729,6 +1729,53 @@ subtest 'AddReturn | is_overdue' => sub { }; +subtest 'Set waiting flag' => sub { + plan tests => 2; + + my $library_1 = $builder->build( { source => 'Branch' } ); + my $patron_1 = $builder->build( { source => 'Borrower', value => { branchcode => $library_1->{branchcode} } } ); + my $library_2 = $builder->build( { source => 'Branch' } ); + my $patron_2 = $builder->build( { source => 'Borrower', value => { branchcode => $library_2->{branchcode} } } ); + + my $biblio = $builder->build( { source => 'Biblio' } ); + my $biblioitem = $builder->build( { source => 'Biblioitem', value => { biblionumber => $biblio->{biblionumber} } } ); + my $item = $builder->build( + { + source => 'Item', + value => { + homebranch => $library_1->{branchcode}, + holdingbranch => $library_1->{branchcode}, + notforloan => 0, + itemlost => 0, + withdrawn => 0, + biblionumber => $biblioitem->{biblionumber}, + } + } + ); + + + + set_userenv( $library_2 ); + my $reserve_id = AddReserve( + $library_2->{branchcode}, $patron_2->{borrowernumber}, $biblioitem->{biblionumber}, + '', 1, undef, undef, '', undef, $item->{itemnumber}, + ); + + set_userenv( $library_1 ); + my $do_transfer = 1; + my ( $res, $rr ) = AddReturn( $item->{barcode}, $library_1->{branchcode} ); + ModReserveAffect( $item->{itemnumber}, undef, $do_transfer, $reserve_id ); + my $hold = Koha::Holds->find( $reserve_id ); + is( $hold->found, 'T', 'Hold is in transit' ); + + set_userenv( $library_2 ); + $do_transfer = 0; + AddReturn( $item->{barcode}, $library_2->{branchcode} ); + ModReserveAffect( $item->{itemnumber}, undef, $do_transfer, $reserve_id ); + $hold = Koha::Holds->find( $reserve_id ); + is( $hold->found, 'W', 'Hold is waiting' ); +}; + sub set_userenv { my ( $library ) = @_; C4::Context->set_userenv(0,0,0,'firstname','surname', $library->{branchcode}, $library->{branchname}, '', '', '');