View | Details | Raw Unified | Return to bug 21985
Collapse All | Expand All

(-)a/t/db_dependent/Circulation.t (-21 / +15 lines)
Lines 2629-2676 subtest 'Cancel transfers on lost items' => sub { Link Here
2629
    my $patron_1 = $builder->build( { source => 'Borrower', value => { branchcode => $library_1->{branchcode}, categorycode => $patron_category->{categorycode} } } );
2629
    my $patron_1 = $builder->build( { source => 'Borrower', value => { branchcode => $library_1->{branchcode}, categorycode => $patron_category->{categorycode} } } );
2630
    my $library_2 = $builder->build( { source => 'Branch' } );
2630
    my $library_2 = $builder->build( { source => 'Branch' } );
2631
    my $patron_2  = $builder->build( { source => 'Borrower', value => { branchcode => $library_2->{branchcode}, categorycode => $patron_category->{categorycode} } } );
2631
    my $patron_2  = $builder->build( { source => 'Borrower', value => { branchcode => $library_2->{branchcode}, categorycode => $patron_category->{categorycode} } } );
2632
    my $biblio = $builder->build( { source => 'Biblio' } );
2632
    my $biblio = $builder->build_sample_biblio({branchcode => $library->{branchcode}});
2633
    my $biblioitem = $builder->build( { source => 'Biblioitem', value => { biblionumber => $biblio->{biblionumber} } } );
2633
    my $item   = $builder->build_sample_item(
2634
    my $item = $builder->build(
2635
        {
2634
        {
2636
            source => 'Item',
2635
            class => 'Koha::Items',
2637
            value => {
2636
            value => {
2638
                homebranch => $library_1->{branchcode},
2637
                biblionumber => $biblio->biblionumber,
2639
                holdingbranch => $library_1->{branchcode},
2638
                library      => $library_1->{branchcode},
2640
                notforloan => 0,
2641
                itemlost => 0,
2642
                withdrawn => 0,
2643
                biblionumber => $biblioitem->{biblionumber},
2644
            }
2639
            }
2645
        }
2640
        }
2646
    );
2641
    );
2647
2642
2648
    set_userenv( $library_2 );
2643
    set_userenv( $library_2 );
2649
    my $reserve_id = AddReserve(
2644
    my $reserve_id = AddReserve(
2650
        $library_2->{branchcode}, $patron_2->{borrowernumber}, $biblioitem->{biblionumber}, '', 1, undef, undef, '', undef, $item->{itemnumber},
2645
        $library_2->{branchcode}, $patron_2->{borrowernumber}, $item->biblionumber, '', 1, undef, undef, '', undef, $item->itemnumber,
2651
    );
2646
    );
2652
2647
2653
    #Return book and add transfer
2648
    #Return book and add transfer
2654
    set_userenv( $library_1 );
2649
    set_userenv( $library_1 );
2655
    my $do_transfer = 1;
2650
    my $do_transfer = 1;
2656
    my ( $res, $rr ) = AddReturn( $item->{barcode}, $library_1->{branchcode} );
2651
    my ( $res, $rr ) = AddReturn( $item->barcode, $library_1->{branchcode} );
2657
    ModReserveAffect( $item->{itemnumber}, undef, $do_transfer, $reserve_id );
2652
    ModReserveAffect( $item->itemnumber, undef, $do_transfer, $reserve_id );
2658
    C4::Circulation::transferbook( $library_2->{branchcode}, $item->{barcode} );
2653
    C4::Circulation::transferbook( $library_2->{branchcode}, $item->barcode );
2659
    my $hold = Koha::Holds->find( $reserve_id );
2654
    my $hold = Koha::Holds->find( $reserve_id );
2660
    is( $hold->found, 'T', 'Hold is in transit' );
2655
    is( $hold->found, 'T', 'Hold is in transit' );
2661
2656
2662
    #Check transfer exists and the items holding branch is the transfer destination branch before marking it as lost
2657
    #Check transfer exists and the items holding branch is the transfer destination branch before marking it as lost
2663
    my ($datesent,$frombranch,$tobranch) = GetTransfers($item->{itemnumber});
2658
    my ($datesent,$frombranch,$tobranch) = GetTransfers($item->itemnumber);
2664
    is( $tobranch, $library_2->{branchcode}, 'The transfer record exists in the branchtransfers table');
2659
    is( $tobranch, $library_2->{branchcode}, 'The transfer record exists in the branchtransfers table');
2665
    my $itemcheck = Koha::Items->find($item->{itemnumber});
2660
    my $itemcheck = Koha::Items->find($item->itemnumber);
2666
    is( $itemcheck->holdingbranch, $library_2->{branchcode}, 'Items holding branch is the transfers destination branch before it is marked as lost' );
2661
    is( $itemcheck->holdingbranch, $library_2->{branchcode}, 'Items holding branch is the transfers destination branch before it is marked as lost' );
2667
2662
2668
    #Simulate item being marked as lost and confirm the transfer is deleted and the items holding branch is the transfers source branch
2663
    #Simulate item being marked as lost and confirm the transfer is deleted and the items holding branch is the transfers source branch
2669
    ModItem( { itemlost => 1 }, $biblio->{biblionumber}, $item->{itemnumber} );
2664
    ModItem( { itemlost => 1 }, $item->biblionumber, $item->itemnumber );
2670
    LostItem( $item->{itemnumber}, 'test', 1 );
2665
    LostItem( $item->itemnumber, 'test', 1 );
2671
    ($datesent,$frombranch,$tobranch) = GetTransfers($item->{itemnumber});
2666
    ($datesent,$frombranch,$tobranch) = GetTransfers($item->itemnumber);
2672
    is( $tobranch, undef, 'The transfer on the lost item has been deleted as the LostItemCancelOutstandingTransfer is enabled');
2667
    is( $tobranch, undef, 'The transfer on the lost item has been deleted as the LostItemCancelOutstandingTransfer is enabled');
2673
    $itemcheck = Koha::Items->find($item->{itemnumber});
2668
    $itemcheck = Koha::Items->find($item->itemnumber);
2674
    is( $itemcheck->holdingbranch, $library_1->{branchcode}, 'Lost item with cancelled hold has holding branch equallying the transfers source branch' );
2669
    is( $itemcheck->holdingbranch, $library_1->{branchcode}, 'Lost item with cancelled hold has holding branch equallying the transfers source branch' );
2675
};
2670
};
2676
2671
2677
- 

Return to bug 21985