From 7a4fba4b726e84f212fedb8a3204e5845bda1ad9 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Wed, 29 Jan 2020 09:57:42 +0100 Subject: [PATCH] Bug 23260: Simplify tests Use build_sample_item and build_object --- t/db_dependent/Koha/Patrons.t | 104 +++++++++++++++--------------------------- 1 file changed, 38 insertions(+), 66 deletions(-) diff --git a/t/db_dependent/Koha/Patrons.t b/t/db_dependent/Koha/Patrons.t index e011a88ee8..4e1fb2173e 100644 --- a/t/db_dependent/Koha/Patrons.t +++ b/t/db_dependent/Koha/Patrons.t @@ -1174,93 +1174,65 @@ subtest 'search_patrons_to_anonymise & anonymise_issue_history' => sub { subtest 'anonymise items_last_borrower' => sub { plan tests => 1; - # TODO create a subroutine in t::lib::Mocks - my $anonymous = $builder->build( { source => 'Borrower', }, ); + my $anonymous = $builder->build_object( { class => 'Koha::Patrons', }, ); - t::lib::Mocks::mock_preference( 'AnonymousPatron', $anonymous->{borrowernumber} ); + t::lib::Mocks::mock_preference( 'AnonymousPatron', $anonymous->borrowernumber ); t::lib::Mocks::mock_preference('StoreLastBorrower', 1); subtest 'withrawn, lost and damaged items' => sub { plan tests => 5; - my $patron = $builder->build( - { source => 'Borrower', - value => { privacy => 1, } - } - ); - my $item_1 = $builder->build_object( - { class => 'Koha::Items', - value => { - itemlost => 0, - withdrawn => 0, - damaged => 0, - }, + my $patron = $builder->build_object( + { + class => 'Koha::Patrons', + value => { privacy => 1, } } ); - my $issue_1 = $builder->build( - { source => 'Issue', - value => { - borrowernumber => $patron->{borrowernumber}, + my $item_1 = $builder->build_sample_item; + my $issue_1 = $builder->build_object( + { + class => 'Koha::Checkouts', + value => { + borrowernumber => $patron->borrowernumber, itemnumber => $item_1->itemnumber, }, } ); - my $item_2 = $builder->build_object( - { class => 'Koha::Items', - value => { - itemlost => 0, - withdrawn => 0, - damaged => 0, - }, - } - ); - my $issue_2 = $builder->build( - { source => 'Issue', - value => { - borrowernumber => $patron->{borrowernumber}, + my $item_2 = $builder->build_sample_item; + my $issue_2 = $builder->build_object( + { + class => 'Koha::Checkouts', + value => { + borrowernumber => $patron->borrowernumber, itemnumber => $item_2->itemnumber, }, } ); - my $item_3 = $builder->build_object( - { class => 'Koha::Items', - value => { - itemlost => 0, - withdrawn => 0, - damaged => 0, - }, - } - ); - my $issue_3 = $builder->build( - { source => 'Issue', - value => { - borrowernumber => $patron->{borrowernumber}, + my $item_3 = $builder->build_sample_item; + my $issue_3 = $builder->build_object( + { + class => 'Koha::Checkouts', + value => { + borrowernumber => $patron->borrowernumber, itemnumber => $item_3->itemnumber, }, } ); - my $item_4 = $builder->build_object( - { class => 'Koha::Items', - value => { - itemlost => 0, - withdrawn => 0, - damaged => 0, - }, - } - ); - my $issue_4 = $builder->build( - { source => 'Issue', - value => { - borrowernumber => $patron->{borrowernumber}, + my $item_4 = $builder->build_sample_item; + my $issue_4 = $builder->build_object( + { + class => 'Koha::Checkouts', + value => { + borrowernumber => $patron->borrowernumber, itemnumber => $item_4->itemnumber, }, } ); - my ( $returned_1, undef, undef ) = C4::Circulation::AddReturn( $item_1->barcode, undef, undef, dt_from_string('2010-10-11') ); - my ( $returned_2, undef, undef ) = C4::Circulation::AddReturn( $item_2->barcode, undef, undef, dt_from_string('2010-10-11') ); - my ( $returned_3, undef, undef ) = C4::Circulation::AddReturn( $item_3->barcode, undef, undef, dt_from_string('2010-10-11') ); - my ( $returned_4, undef, undef ) = C4::Circulation::AddReturn( $item_4->barcode, undef, undef, dt_from_string('2010-10-11') ); + my ( $returned_1 ) = C4::Circulation::AddReturn( $item_1->barcode, undef, undef, dt_from_string('2010-10-11') ); + my ( $returned_2 ) = C4::Circulation::AddReturn( $item_2->barcode, undef, undef, dt_from_string('2010-10-11') ); + my ( $returned_3 ) = C4::Circulation::AddReturn( $item_3->barcode, undef, undef, dt_from_string('2010-10-11') ); + my ( $returned_4 ) = C4::Circulation::AddReturn( $item_4->barcode, undef, undef, dt_from_string('2010-10-11') ); is( $returned_1 && $returned_2 && $returned_3 && $returned_4, 1, 'The items should have been returned' ); $item_1->withdrawn(1)->store; $item_2->itemlost(1)->store; @@ -1272,16 +1244,16 @@ subtest 'anonymise items_last_borrower' => sub { my $sth = $dbh->prepare(q|SELECT borrowernumber FROM items_last_borrower where itemnumber = ?|); $sth->execute($item_1->itemnumber); my ($borrowernumber_used_to_anonymised) = $sth->fetchrow_array; - is( $borrowernumber_used_to_anonymised, $patron->{borrowernumber}, 'withrawn items should not be anonymised' ); + is( $borrowernumber_used_to_anonymised, $patron->borrowernumber, 'withrawn items should not be anonymised' ); $sth->execute($item_2->itemnumber); ($borrowernumber_used_to_anonymised) = $sth->fetchrow_array; - is( $borrowernumber_used_to_anonymised, $patron->{borrowernumber}, 'lost items should not be anonymised' ); + is( $borrowernumber_used_to_anonymised, $patron->borrowernumber, 'lost items should not be anonymised' ); $sth->execute($item_3->itemnumber); ($borrowernumber_used_to_anonymised) = $sth->fetchrow_array; - is( $borrowernumber_used_to_anonymised, $patron->{borrowernumber}, 'damaged items should not be anonymised' ); + is( $borrowernumber_used_to_anonymised, $patron->borrowernumber, 'damaged items should not be anonymised' ); $sth->execute($item_4->itemnumber); ($borrowernumber_used_to_anonymised) = $sth->fetchrow_array; - is( $borrowernumber_used_to_anonymised, $anonymous->{borrowernumber}, 'not withdrawn, lost or damaged items are anonymised' ); + is( $borrowernumber_used_to_anonymised, $anonymous->borrowernumber, 'not withdrawn, lost or damaged items are anonymised' ); }; -- 2.11.0