Bugzilla – Attachment 105245 Details for
Bug 25560
Define itemtype specific rules in the UpdateNotForLoanStatusOnCheckin system preference
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 25560: Unit tests
Bug-25560-Unit-tests.patch (text/plain), 5.50 KB, created by
Alex Buckley
on 2020-05-22 04:53:32 UTC
(
hide
)
Description:
Bug 25560: Unit tests
Filename:
MIME Type:
Creator:
Alex Buckley
Created:
2020-05-22 04:53:32 UTC
Size:
5.50 KB
patch
obsolete
>From 59c9d68664ef09f8f36c946cda219302451aa981 Mon Sep 17 00:00:00 2001 >From: Alex Buckley <alexbuckley@catalyst.net.nz> >Date: Fri, 22 May 2020 04:43:02 +0000 >Subject: [PATCH] Bug 25560: Unit tests > >Test plan: >1. Run tests >sudo koha-shell <instancename> >prove xt >prove t >prove t/db_dependent/Circulation/issues.t >prove t/db_dependent/Koha/Object.t > >Sponsored-By: Waikato Institute of Technology, NZ >--- > t/db_dependent/Circulation/issue.t | 41 ++++++++++++++++++++++++++++++++++++-- > t/db_dependent/Koha/Object.t | 4 +++- > 2 files changed, 42 insertions(+), 3 deletions(-) > >diff --git a/t/db_dependent/Circulation/issue.t b/t/db_dependent/Circulation/issue.t >index 36c56bb427..c11138751e 100644 >--- a/t/db_dependent/Circulation/issue.t >+++ b/t/db_dependent/Circulation/issue.t >@@ -17,7 +17,7 @@ > > use Modern::Perl; > >-use Test::More tests => 45; >+use Test::More tests => 49; > use DateTime::Duration; > > use t::lib::Mocks; >@@ -79,6 +79,12 @@ my $itemtype = $builder->build( > value => { notforloan => undef, rentalcharge => 0 } > } > )->{itemtype}; >+my $itemtype2 = $builder->build( >+ { source => 'Itemtype', >+ value => { notforloan => undef, updatenotforloanstatusoncheckin => 0 } >+ } >+)->{itemtype}; >+ > my $branchcode_1 = $builder->build({ source => 'Branch' })->{branchcode}; > my $branchcode_2 = $builder->build({ source => 'Branch' })->{branchcode}; > my $branchcode_3 = $builder->build({ source => 'Branch' })->{branchcode}; >@@ -125,10 +131,17 @@ my $daysago10 = output_pref( > > # Add biblio and item > my $record = MARC::Record->new(); >+my $record2 = MARC::Record->new(); > $record->append_fields( >+ MARC::Field->new( '942', '0', '0', c => $itemtype ), >+ MARC::Field->new( '952', '0', '0', a => $branchcode_1 ) ); >+ >+$record2->append_fields( >+ MARC::Field->new( '942', '0', '0', c => $itemtype2 ), > MARC::Field->new( '952', '0', '0', a => $branchcode_1 ) ); > > my ( $biblionumber, $biblioitemnumber ) = C4::Biblio::AddBiblio( $record, '' ); >+my ( $biblionumber2, $biblioitemnumber2 ) = C4::Biblio::AddBiblio( $record2, '' ); > > my $barcode_1 = 'barcode_1'; > my $barcode_2 = 'barcode_2'; >@@ -395,7 +408,8 @@ my $itemnumber = Koha::Item->new( > homebranch => $branchcode_1, > holdingbranch => $branchcode_1, > notforloan => 1, >- itype => $itemtype >+ itype => $itemtype, >+ biblioitemnumber => $biblioitemnumber > }, > )->store->itemnumber; > >@@ -413,6 +427,29 @@ AddReturn( 'barcode_3', $branchcode_1 ); > $item = Koha::Items->find( $itemnumber ); > ok( $item->notforloan eq 9, q{UpdateNotForLoanStatusOnCheckin does not update notforloan value from 9 with setting "1: 9"} ); > >+# Item type exclusions from UpdateNotForLoanStatusOnCheckin syspref >+t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckin', '9: 1'); >+AddReturn( 'barcode_3', $branchcode_1 ); >+$item = Koha::Items->find( $itemnumber ); >+ok( $item->notforloan eq 1, q{UpdateNotForLoanStatusOnCheckin updates notforloan value from 9 to 1 when the items type has itemtypes.updatenotforloanstatusoncheckin = 1} ); >+ >+Koha::Items->find( $itemnumber )->itype($itemtype2)->store; >+t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckin', '1: 9'); >+AddReturn( 'barcode_3', $branchcode_1 ); >+$item = Koha::Items->find( $itemnumber ); >+ok( $item->notforloan eq 1, q{UpdateNotForLoanStatusOnCheckin does not update notforloan value when itemtypes.updatenotforloanstatusoncheckin = 0} ); >+ >+t::lib::Mocks::mock_preference( 'item-level_itypes', '0' ); >+AddReturn( 'barcode_3', $branchcode_1 ); >+$item = Koha::Items->find( $itemnumber ); >+ok( $item->notforloan eq 9, q{UpdateNotForLoanStatusOnCheckin updates notforloan value when item-level_itypes = 0, returned item biblio-level itemtype enables updatenotforloanstatusoncheckin & item level itype disables updatenotforloanstatusoncheckin} ); >+ >+Koha::Items->find( $itemnumber )->biblioitemnumber($biblioitemnumber2)->store; >+t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckin', '9: 1'); >+AddReturn( 'barcode_3', $branchcode_1 ); >+$item = Koha::Items->find( $itemnumber ); >+ok( $item->notforloan eq 9, q{UpdateNotForLoanStatusOnCheckin does not update notforloanvalue when item-level_itypes=0, returned item biblio-level itemtype enables updatenotforloanstatusoncheckin & item level itype disables updatenotforloanstatusoncheck} ); >+ > my $itemnumber2 = Koha::Item->new( > { > biblionumber => $biblionumber, >diff --git a/t/db_dependent/Koha/Object.t b/t/db_dependent/Koha/Object.t >index c23f023cd4..166eba0f88 100755 >--- a/t/db_dependent/Koha/Object.t >+++ b/t/db_dependent/Koha/Object.t >@@ -596,7 +596,7 @@ subtest "Test update method" => sub { > > subtest 'store() tests' => sub { > >- plan tests => 16; >+ plan tests => 17; > > # Using Koha::ApiKey to test Koha::Object>-store > # Simple object with foreign keys and unique key >@@ -692,6 +692,7 @@ subtest 'store() tests' => sub { > rentalcharge => "", > notforloan => "", > hideinopac => "", >+ updatenotforloanstatusoncheckin => "", > } > )->store; > }; >@@ -699,6 +700,7 @@ subtest 'store() tests' => sub { > is( $itemtype->rentalcharge, undef, 'decimal DEFAULT NULL should default to null'); > is( $itemtype->notforloan, undef, 'int DEFAULT NULL should default to null'); > is( $itemtype->hideinopac, 0, 'int NOT NULL DEFAULT 0 should default to 0'); >+ is( $itemtype->updatenotforloanstatusoncheckin, 1, 'int NOT NULL DEFAULT 1 should default to 1'); > > subtest 'Bad value tests' => sub { > >-- >2.11.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 25560
:
105236
|
105237
|
105238
|
105239
|
105240
|
105241
|
105242
|
105243
|
105244
|
105245
|
109562
|
109563
|
109564
|
109565
|
109566
|
109567
|
112492
|
112887
|
113161
|
113212
|
113213
|
113214
|
113215
|
113216
|
113217
|
131816
|
131817
|
131818
|
131819
|
131820
|
135742
|
135743
|
136079
|
136080
|
136081
|
136082
|
136083
|
136084
|
138494
|
138495
|
138496
|
138497
|
138498
|
138499
|
146556
|
146557
|
146558
|
146559
|
146993
|
148679
|
148680
|
148681
|
148682
|
148683