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

(-)a/t/db_dependent/Circulation.t (-92 / +149 lines)
Lines 469-520 subtest "CanBookBeRenewed tests" => sub { Link Here
469
    );
469
    );
470
470
471
    # Create borrowers
471
    # Create borrowers
472
    my %renewing_borrower_data = (
473
        firstname =>  'John',
474
        surname => 'Renewal',
475
        categorycode => $patron_category->{categorycode},
476
        branchcode => $branch,
477
        autorenew_checkouts => 1,
478
    );
479
480
    my %reserving_borrower_data = (
481
        firstname =>  'Katrin',
482
        surname => 'Reservation',
483
        categorycode => $patron_category->{categorycode},
484
        branchcode => $branch,
485
    );
486
472
487
    my %hold_waiting_borrower_data = (
473
    my $renewing_borrower_obj = $builder->build_object(
488
        firstname =>  'Kyle',
474
        {
489
        surname => 'Reservation',
475
            class => 'Koha::Patrons',
490
        categorycode => $patron_category->{categorycode},
476
            value => {
491
        branchcode => $branch,
477
                firstname =>  'John',
492
    );
478
                surname => 'Renewal',
479
                categorycode => $patron_category->{categorycode},
480
                branchcode => $branch,
481
                autorenew_checkouts => 1,
482
            }
483
        }
484
    )->store;
485
    my $renewing_borrowernumber = $renewing_borrower_obj->borrowernumber;
493
486
494
    my %restricted_borrower_data = (
487
    my $reserving_borrowernumber = $builder->build_object(
495
        firstname =>  'Alice',
488
        {
496
        surname => 'Reservation',
489
            class => 'Koha::Patrons',
497
        categorycode => $patron_category->{categorycode},
490
            value => {
498
        debarred => '3228-01-01',
491
                firstname =>  'Katrin',
499
        branchcode => $branch,
492
                surname => 'Reservation',
500
    );
493
                categorycode => $patron_category->{categorycode},
494
                branchcode => $branch,
495
            }
496
        }
497
    )->store->borrowernumber;
501
498
502
    my %expired_borrower_data = (
499
    my $hold_waiting_borrowernumber = $builder->build_object(
503
        firstname =>  'Ça',
500
        {
504
        surname => 'Glisse',
501
            class => 'Koha::Patrons',
505
        categorycode => $patron_category->{categorycode},
502
            value => {
506
        branchcode => $branch,
503
                firstname =>  'Kyle',
507
        dateexpiry => dt_from_string->subtract( months => 1 ),
504
                surname => 'Reservation',
508
        autorenew_checkouts => 1,
505
                categorycode => $patron_category->{categorycode},
509
    );
506
                branchcode => $branch,
507
            }
508
        }
509
    )->store->borrowernumber;
510
510
511
    my $renewing_borrower_obj = Koha::Patron->new(\%renewing_borrower_data)->store;
511
    my $restricted_borrower_obj = $builder->build_object(
512
    my $renewing_borrowernumber = $renewing_borrower_obj->borrowernumber;
512
        {
513
    my $reserving_borrowernumber = Koha::Patron->new(\%reserving_borrower_data)->store->borrowernumber;
513
            class => 'Koha::Patrons',
514
    my $hold_waiting_borrowernumber = Koha::Patron->new(\%hold_waiting_borrower_data)->store->borrowernumber;
514
            value => {
515
    my $restricted_borrower_obj = Koha::Patron->new(\%restricted_borrower_data)->store;
515
                firstname =>  'Alice',
516
                surname => 'Reservation',
517
                categorycode => $patron_category->{categorycode},
518
                debarred => '3228-01-01',
519
                branchcode => $branch,
520
            }
521
        }
522
    )->store;
516
523
517
    my $expired_borrower_obj = Koha::Patron->new(\%expired_borrower_data)->store;
524
    my $expired_borrower_obj = $builder->build_object(
525
        {
526
            class => 'Koha::Patrons',
527
            value => {
528
                firstname =>  'Ça',
529
                surname => 'Glisse',
530
                categorycode => $patron_category->{categorycode},
531
                branchcode => $branch,
532
                dateexpiry => dt_from_string->subtract( months => 1 ),
533
                autorenew_checkouts => 1,
534
            }
535
        }
536
    );
518
537
519
    my $bibitems       = '';
538
    my $bibitems       = '';
520
    my $priority       = '1';
539
    my $priority       = '1';
Lines 1851-1869 subtest "AllowRenewalIfOtherItemsAvailable tests" => sub { Link Here
1851
        }
1870
        }
1852
    );
1871
    );
1853
1872
1873
    my $borrower1 = $builder->build_object(
1874
        {
1875
            class => 'Koha::Patrons',
1876
            value => {
1877
                firstname    => 'Kyle',
1878
                surname      => 'Hall',
1879
                categorycode => $patron_category->{categorycode},
1880
                branchcode   => $library2->{branchcode},
1881
            }
1882
        }
1883
    );
1884
1885
    my $borrowernumber2 = $builder->build_object(
1886
        {
1887
            class => 'Koha::Patrons',
1888
            value => {
1889
                firstname    => 'Chelsea',
1890
                surname      => 'Hall',
1891
                categorycode => $patron_category->{categorycode},
1892
                branchcode   => $library2->{branchcode},
1893
1894
            }
1895
        }
1896
    )->borrowernumber;
1854
1897
1855
    my $borrower1 = Koha::Patron->new({
1856
        firstname    => 'Kyle',
1857
        surname      => 'Hall',
1858
        categorycode => $patron_category->{categorycode},
1859
        branchcode   => $library2->{branchcode},
1860
    })->store;
1861
    my $borrowernumber2 = Koha::Patron->new({
1862
        firstname    => 'Chelsea',
1863
        surname      => 'Hall',
1864
        categorycode => $patron_category->{categorycode},
1865
        branchcode   => $library2->{branchcode},
1866
    })->store->borrowernumber;
1867
    my $patron_category_2 = $builder->build(
1898
    my $patron_category_2 = $builder->build(
1868
        {
1899
        {
1869
            source => 'Category',
1900
            source => 'Category',
Lines 1874-1885 subtest "AllowRenewalIfOtherItemsAvailable tests" => sub { Link Here
1874
            }
1905
            }
1875
        }
1906
        }
1876
    );
1907
    );
1877
    my $borrowernumber3 = Koha::Patron->new({
1908
1878
        firstname    => 'Carnegie',
1909
    my $borrowernumber3 = $builder->build_object(
1879
        surname      => 'Hall',
1910
        {
1880
        categorycode => $patron_category_2->{categorycode},
1911
            class => 'Koha::Patrons',
1881
        branchcode   => $library2->{branchcode},
1912
            value => {
1882
    })->store->borrowernumber;
1913
                firstname    => 'Carnegie',
1914
                surname      => 'Hall',
1915
                categorycode => $patron_category_2->{categorycode},
1916
                branchcode   => $library2->{branchcode},
1917
            }
1918
        }
1919
    )->borrowernumber;
1883
1920
1884
    my $issue = AddIssue( $borrower1, $item_1->barcode );
1921
    my $issue = AddIssue( $borrower1, $item_1->barcode );
1885
1922
Lines 2041-2052 subtest "AllowRenewalIfOtherItemsAvailable tests" => sub { Link Here
2041
        }
2078
        }
2042
    );
2079
    );
2043
2080
2044
    my $borrower = Koha::Patron->new({
2081
    my $borrower = $builder->build_object(
2045
        firstname =>  'fn',
2082
        {
2046
        surname => 'dn',
2083
            class => 'Koha::Patrons',
2047
        categorycode => $patron_category->{categorycode},
2084
            value => {
2048
        branchcode => $branch,
2085
                firstname =>  'fn',
2049
    })->store;
2086
                surname => 'dn',
2087
                categorycode => $patron_category->{categorycode},
2088
                branchcode => $branch,
2089
            }
2090
        }
2091
    );
2050
2092
2051
    my $issue = AddIssue( $borrower, $item->barcode, undef, undef, undef, undef, { onsite_checkout => 1 } );
2093
    my $issue = AddIssue( $borrower, $item->barcode, undef, undef, undef, undef, { onsite_checkout => 1 } );
2052
    my ( $renewed, $error ) = CanBookBeRenewed( $borrower, $issue );
2094
    my ( $renewed, $error ) = CanBookBeRenewed( $borrower, $issue );
Lines 2522-2546 subtest 'MultipleReserves' => sub { Link Here
2522
    my $checkitem      = undef;
2564
    my $checkitem      = undef;
2523
    my $found          = undef;
2565
    my $found          = undef;
2524
2566
2525
    my %renewing_borrower_data = (
2567
    # Renewing borrower
2526
        firstname =>  'John',
2568
    my $patron = $builder->build_object(
2527
        surname => 'Renewal',
2569
        {
2528
        categorycode => $patron_category->{categorycode},
2570
            class => 'Koha::Patrons',
2529
        branchcode => $branch,
2571
            value => {
2572
                firstname =>  'John',
2573
                surname => 'Renewal',
2574
                categorycode => $patron_category->{categorycode},
2575
                branchcode => $branch,
2576
            }
2577
        }
2530
    );
2578
    );
2531
    my $patron = Koha::Patron->new(\%renewing_borrower_data)->store;
2579
2532
    my $issue = AddIssue( $patron, $item_1->barcode);
2580
    my $issue = AddIssue( $patron, $item_1->barcode);
2533
    my $datedue = dt_from_string( $issue->date_due() );
2581
    my $datedue = dt_from_string( $issue->date_due() );
2534
    is (defined $issue->date_due(), 1, "item 1 checked out");
2582
    is (defined $issue->date_due(), 1, "item 1 checked out");
2535
    my $borrowing_borrowernumber = Koha::Checkouts->find({ itemnumber => $item_1->itemnumber })->borrowernumber;
2583
    my $borrowing_borrowernumber = Koha::Checkouts->find({ itemnumber => $item_1->itemnumber })->borrowernumber;
2536
2584
2537
    my %reserving_borrower_data1 = (
2585
    my $reserving_borrowernumber1 = $builder->build_object(
2538
        firstname =>  'Katrin',
2586
        {
2539
        surname => 'Reservation',
2587
            class => 'Koha::Patrons',
2540
        categorycode => $patron_category->{categorycode},
2588
            value => {
2541
        branchcode => $branch,
2589
                firstname =>  'Katrin',
2542
    );
2590
                surname => 'Reservation',
2543
    my $reserving_borrowernumber1 = Koha::Patron->new(\%reserving_borrower_data1)->store->borrowernumber;
2591
                categorycode => $patron_category->{categorycode},
2592
                branchcode => $branch,
2593
            }
2594
        }
2595
    )->borrowernumber;
2596
2544
    AddReserve(
2597
    AddReserve(
2545
        {
2598
        {
2546
            branchcode       => $branch,
2599
            branchcode       => $branch,
Lines 2555-2567 subtest 'MultipleReserves' => sub { Link Here
2555
        }
2608
        }
2556
    );
2609
    );
2557
2610
2558
    my %reserving_borrower_data2 = (
2611
    my $reserving_borrowernumber2 = $builder->build_object(
2559
        firstname =>  'Kirk',
2612
        {
2560
        surname => 'Reservation',
2613
            class => 'Koha::Patrons',
2561
        categorycode => $patron_category->{categorycode},
2614
            value => {
2562
        branchcode => $branch,
2615
                firstname =>  'Kirk',
2563
    );
2616
                surname => 'Reservation',
2564
    my $reserving_borrowernumber2 = Koha::Patron->new(\%reserving_borrower_data2)->store->borrowernumber;
2617
                categorycode => $patron_category->{categorycode},
2618
                branchcode => $branch,
2619
            }
2620
        }
2621
    )->borrowernumber;
2622
2565
    AddReserve(
2623
    AddReserve(
2566
        {
2624
        {
2567
            branchcode       => $branch,
2625
            branchcode       => $branch,
Lines 4406-4412 subtest 'CanBookBeIssued | item-level_itypes=biblio' => sub { Link Here
4406
4464
4407
    t::lib::Mocks::mock_preference('item-level_itypes', 0); # biblio
4465
    t::lib::Mocks::mock_preference('item-level_itypes', 0); # biblio
4408
    my $library = $builder->build( { source => 'Branch' } );
4466
    my $library = $builder->build( { source => 'Branch' } );
4409
    my $patron  = $builder->build_object( { class => 'Koha::Patrons', value => { categorycode => $patron_category->{categorycode} } } )->store;
4467
    my $patron  = $builder->build_object( { class => 'Koha::Patrons', value => { categorycode => $patron_category->{categorycode} } } );
4410
4468
4411
    my $item = $builder->build_sample_item(
4469
    my $item = $builder->build_sample_item(
4412
        {
4470
        {
Lines 4425-4431 subtest 'CanBookBeIssued | notforloan' => sub { Link Here
4425
    t::lib::Mocks::mock_preference('AllowNotForLoanOverride', 0);
4483
    t::lib::Mocks::mock_preference('AllowNotForLoanOverride', 0);
4426
4484
4427
    my $library = $builder->build( { source => 'Branch' } );
4485
    my $library = $builder->build( { source => 'Branch' } );
4428
    my $patron  = $builder->build_object( { class => 'Koha::Patrons', value => { categorycode => $patron_category->{categorycode} } } )->store;
4486
    my $patron  = $builder->build_object( { class => 'Koha::Patrons', value => { categorycode => $patron_category->{categorycode} } } );
4429
4487
4430
    my $itemtype = $builder->build(
4488
    my $itemtype = $builder->build(
4431
        {
4489
        {
Lines 4892-4898 subtest 'Incremented fee tests' => sub { Link Here
4892
            class => 'Koha::Patrons',
4950
            class => 'Koha::Patrons',
4893
            value => { categorycode => $patron_category->{categorycode} }
4951
            value => { categorycode => $patron_category->{categorycode} }
4894
        }
4952
        }
4895
    )->store;
4953
    );
4896
4954
4897
    my $itemtype = $builder->build_object(
4955
    my $itemtype = $builder->build_object(
4898
        {
4956
        {
Lines 5157-5163 subtest 'CanBookBeIssued & RentalFeesCheckoutConfirmation' => sub { Link Here
5157
            class => 'Koha::Patrons',
5215
            class => 'Koha::Patrons',
5158
            value => { categorycode => $patron_category->{categorycode} }
5216
            value => { categorycode => $patron_category->{categorycode} }
5159
        }
5217
        }
5160
    )->store;
5218
    );
5161
5219
5162
    my $itemtype = $builder->build_object(
5220
    my $itemtype = $builder->build_object(
5163
        {
5221
        {
Lines 5204-5210 subtest 'CanBookBeIssued & CircConfirmItemParts' => sub { Link Here
5204
            class => 'Koha::Patrons',
5262
            class => 'Koha::Patrons',
5205
            value => { categorycode => $patron_category->{categorycode} }
5263
            value => { categorycode => $patron_category->{categorycode} }
5206
        }
5264
        }
5207
    )->store;
5265
    );
5208
5266
5209
    my $item = $builder->build_sample_item(
5267
    my $item = $builder->build_sample_item(
5210
        {
5268
        {
Lines 5275-5281 subtest 'Filling a hold should cancel existing transfer' => sub { Link Here
5275
                branchcode => $libraryA->branchcode,
5333
                branchcode => $libraryA->branchcode,
5276
            }
5334
            }
5277
        }
5335
        }
5278
    )->store;
5336
    );
5279
5337
5280
    my $item = $builder->build_sample_item({
5338
    my $item = $builder->build_sample_item({
5281
        homebranch => $libraryB->branchcode,
5339
        homebranch => $libraryB->branchcode,
5282
- 

Return to bug 36160