Bugzilla – Attachment 63438 Details for
Bug 18595
Move C4::Members::Messaging to Koha namespace
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 18595: Unit tests preparing for GetMessagingPreferences move
Bug-18595-Unit-tests-preparing-for-GetMessagingPre.patch (text/plain), 6.57 KB, created by
Lari Taskula
on 2017-05-12 13:29:46 UTC
(
hide
)
Description:
Bug 18595: Unit tests preparing for GetMessagingPreferences move
Filename:
MIME Type:
Creator:
Lari Taskula
Created:
2017-05-12 13:29:46 UTC
Size:
6.57 KB
patch
obsolete
>From 0e7322390188eef525d52294df436e3c11d05ba8 Mon Sep 17 00:00:00 2001 >From: Lari Taskula <lari.taskula@jns.fi> >Date: Wed, 2 Nov 2016 16:20:12 +0200 >Subject: [PATCH] Bug 18595: Unit tests preparing for GetMessagingPreferences > move > >This patch prepares removing GetMessagingPreferences by adding some useful unit >tests for subroutines that the move targets. > >Reserves.t already covers print notice, but this patch adds tests for a set >transport type. > >To test: >1. Run t/db_dependent/Circulation.t >2. Run t/db_dependent/Reserves.t >3. Observe test pass >--- > t/db_dependent/Circulation.t | 49 ++++++++++++++++++++++++++++++++++++- > t/db_dependent/Reserves.t | 57 +++++++++++++++++++++++++++++++++++++++++++- > 2 files changed, 104 insertions(+), 2 deletions(-) > >diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t >index 1263122..b93c9ba 100755 >--- a/t/db_dependent/Circulation.t >+++ b/t/db_dependent/Circulation.t >@@ -17,7 +17,7 @@ > > use Modern::Perl; > >-use Test::More tests => 94; >+use Test::More tests => 95; > > use DateTime; > >@@ -29,11 +29,14 @@ use C4::Biblio; > use C4::Items; > use C4::Log; > use C4::Members; >+use C4::Message; > use C4::Reserves; > use C4::Overdues qw(UpdateFine CalcFine); > use Koha::DateUtils; > use Koha::Database; > use Koha::IssuingRules; >+use Koha::Patron::Message::Attributes; >+use Koha::Patron::Message::Preferences; > use Koha::Subscriptions; > > my $schema = Koha::Database->schema; >@@ -1480,6 +1483,7 @@ subtest 'AddReturn + CumulativeRestrictionPeriods' => sub { > } > } > ); >+ > my $biblioitem_2 = $builder->build( { source => 'Biblioitem' } ); > my $item_2 = $builder->build( > { >@@ -1585,6 +1589,49 @@ subtest 'AddReturn + CumulativeRestrictionPeriods' => sub { > ); > is( $debarments->[0]->{expiration}, $expected_expiration ); > }; >+ >+subtest 'SendCirculationAlert test' => sub { >+ plan tests => 4; >+ >+ my $library = $builder->build( { source => 'Branch' } ); >+ my $patron = $builder->build( { source => 'Borrower' } ); >+ my $attribute = Koha::Patron::Message::Attributes->find({ >+ message_name => 'Item_Checkout', >+ }); >+ Koha::Patron::Message::Preference->new({ >+ borrowernumber => $patron->{'borrowernumber'}, >+ message_attribute_id => $attribute->message_attribute_id, >+ days_in_advance => 0, >+ wants_digest => 0, >+ message_transport_types => ['email'], >+ })->store; >+ my $biblioitem_1 = $builder->build( { source => 'Biblioitem' } ); >+ my $item_1 = $builder->build( >+ { source => 'Item', >+ value => { >+ homebranch => $library->{branchcode}, >+ holdingbranch => $library->{branchcode}, >+ notforloan => 0, >+ itemlost => 0, >+ withdrawn => 0, >+ biblionumber => $biblioitem_1->{biblionumber} >+ } >+ } >+ ); >+ >+ my $old_message = C4::Message->find_last_message($patron, 'CHECKOUT', 'email'); >+ $old_message->{'message_id'} = 0 unless $old_message; >+ is(C4::Circulation::SendCirculationAlert({ >+ type => 'CHECKOUT', >+ item => $item_1, >+ borrower => $patron, >+ branch => $library->{'branchcode'}, >+ }), undef, "SendCirculationAlert called."); >+ my $new_message = C4::Message->find_last_message($patron, 'CHECKOUT', 'email'); >+ ok($old_message->{'message_id'} != $new_message->{'message_id'}, "New message has appeared."); >+ is($new_message->{'letter_code'}, 'CHECKOUT', "New message letter code is CHECKOUT."); >+ is($new_message->{'borrowernumber'}, $patron->{'borrowernumber'}, "New message is to our test patron."); >+}; > > sub set_userenv { > my ( $library ) = @_; >diff --git a/t/db_dependent/Reserves.t b/t/db_dependent/Reserves.t >index 4c027b1..43e2d89 100755 >--- a/t/db_dependent/Reserves.t >+++ b/t/db_dependent/Reserves.t >@@ -17,7 +17,7 @@ > > use Modern::Perl; > >-use Test::More tests => 71; >+use Test::More tests => 72; > use Test::MockModule; > use Test::Warn; > >@@ -31,12 +31,15 @@ use C4::Biblio; > use C4::Circulation; > use C4::Items; > use C4::Members; >+use C4::Message; > use C4::Reserves; > use Koha::Caches; > use Koha::DateUtils; > use Koha::Holds; > use Koha::Libraries; > use Koha::Patron::Categories; >+use Koha::Patron::Message::Preference; >+use Koha::Patrons; > > BEGIN { > require_ok('C4::Reserves'); >@@ -713,6 +716,58 @@ $cache->clear_from_cache("MarcStructure-1-$frameworkcode"); > $cache->clear_from_cache("default_value_for_mod_marc-$frameworkcode"); > $cache->clear_from_cache("MarcSubfieldStructure-$frameworkcode"); > >+subtest '_koha_notify_reserve tests' => sub { >+ plan tests => 4; >+ >+ my $library = $builder->build( { source => 'Branch' } ); >+ my $patron = $builder->build( { source => 'Borrower', value => { branchcode => $library->{branchcode} } } ); >+ my $attribute = Koha::Patron::Message::Attributes->find({ >+ message_name => 'Hold_Filled', >+ }); >+ Koha::Patron::Message::Preference->new({ >+ borrowernumber => $patron->{'borrowernumber'}, >+ message_attribute_id => $attribute->message_attribute_id, >+ days_in_advance => 0, >+ wants_digest => 0, >+ message_transport_types => ['email'], >+ })->store; >+ my $biblio_1 = $builder->build( { source => 'Biblio' } ); >+ my $item_1 = $builder->build( >+ { source => 'Item', >+ value => { >+ homebranch => $library->{branchcode}, >+ holdingbranch => $library->{branchcode}, >+ notforloan => 0, >+ itemlost => 0, >+ withdrawn => 0, >+ biblionumber => $biblio_1->{biblionumber} >+ } >+ } >+ ); >+ my $reserve_id = AddReserve( >+ $library->{branchcode}, >+ $patron->{'borrowernumber'}, >+ $biblio_1->{'biblionumber'}, >+ undef, >+ '1', >+ undef, >+ undef, >+ '', >+ $title, >+ $item_1->{'itemnumber'}, >+ 'W' >+ ); >+ >+ my $old_message = C4::Message->find_last_message($patron, 'HOLD', 'email'); >+ $old_message->{'message_id'} = 0 unless $old_message; >+ is(C4::Reserves::_koha_notify_reserve($reserve_id), '', >+ "_koha_notify_reserve called."); >+ my $new_message = C4::Message->find_last_message($patron, 'HOLD', 'email'); >+ ok($old_message->{'message_id'} != $new_message->{'message_id'}, "New message has appeared."); >+ is($new_message->{'letter_code'}, 'HOLD', "New message letter code is HOLD."); >+ is($new_message->{'borrowernumber'}, $patron->{'borrowernumber'}, "New message is to our test patron."); >+}; >+ > # we reached the finish > $schema->storage->txn_rollback(); > >-- >2.7.4
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 18595
:
63435
|
63436
|
63437
|
63438
|
63439
|
63440
|
63441
|
63794
|
63795
|
63796
|
63797
|
63798
|
63799
|
63800
|
63813
|
63815
|
63816
|
63817
|
63818
|
63819
|
63820
|
63821
|
63822
|
63823
|
63824
|
63825
|
63826
|
63827
|
63828
|
63829
|
69441
|
69442
|
69443
|
69444
|
69445
|
69446
|
69447
|
69448
|
69449
|
69450
|
69451
|
69452
|
69453
|
69667
|
69668
|
69669
|
69670
|
69671
|
69672
|
69673
|
69674
|
93873
|
93874
|
93875
|
93876
|
93877
|
93878
|
93879
|
93880
|
93908
|
94753
|
94754
|
103444
|
103445
|
103446
|
103447
|
103448
|
103449
|
103450
|
103451
|
103452
|
110151
|
110152
|
110153
|
110154
|
110155
|
110156
|
110157
|
110158
|
110159
|
112147
|
112148
|
112149
|
112150
|
112151
|
112152
|
112153
|
112154
|
112155
|
112690
|
113126
|
113192
|
113221
|
113222
|
113769
|
146541
|
146542
|
146543
|
146544
|
146545
|
146546
|
146547
|
146548
|
146549
|
146550
|
146551
|
146552