|
Lines 18-24
Link Here
|
| 18 |
use Modern::Perl; |
18 |
use Modern::Perl; |
| 19 |
use utf8; |
19 |
use utf8; |
| 20 |
|
20 |
|
| 21 |
use Test::More tests => 65; |
21 |
use Test::More tests => 66; |
| 22 |
use Test::Exception; |
22 |
use Test::Exception; |
| 23 |
use Test::MockModule; |
23 |
use Test::MockModule; |
| 24 |
use Test::Deep qw( cmp_deeply ); |
24 |
use Test::Deep qw( cmp_deeply ); |
|
Lines 41-46
use C4::Reserves qw( AddReserve ModReserve ModReserveCancelAll ModReserveAffect
Link Here
|
| 41 |
use C4::Overdues qw( CalcFine UpdateFine get_chargeable_units ); |
41 |
use C4::Overdues qw( CalcFine UpdateFine get_chargeable_units ); |
| 42 |
use C4::Members::Messaging qw( SetMessagingPreference ); |
42 |
use C4::Members::Messaging qw( SetMessagingPreference ); |
| 43 |
use Koha::DateUtils qw( dt_from_string output_pref ); |
43 |
use Koha::DateUtils qw( dt_from_string output_pref ); |
|
|
44 |
use C4::Message; |
| 44 |
use Koha::Database; |
45 |
use Koha::Database; |
| 45 |
use Koha::Items; |
46 |
use Koha::Items; |
| 46 |
use Koha::Item::Transfers; |
47 |
use Koha::Item::Transfers; |
|
Lines 49-54
use Koha::Patrons;
Link Here
|
| 49 |
use Koha::Patron::Debarments qw( AddDebarment DelUniqueDebarment ); |
50 |
use Koha::Patron::Debarments qw( AddDebarment DelUniqueDebarment ); |
| 50 |
use Koha::Holds; |
51 |
use Koha::Holds; |
| 51 |
use Koha::CirculationRules; |
52 |
use Koha::CirculationRules; |
|
|
53 |
use Koha::Patron::MessagePreference::Attributes; |
| 54 |
use Koha::Patron::MessagePreferences; |
| 52 |
use Koha::Subscriptions; |
55 |
use Koha::Subscriptions; |
| 53 |
use Koha::Account::Lines; |
56 |
use Koha::Account::Lines; |
| 54 |
use Koha::Account::Offsets; |
57 |
use Koha::Account::Offsets; |
|
Lines 4223-4228
subtest 'ItemsDeniedRenewal rules are checked' => sub {
Link Here
|
| 4223 |
$mock_item_class->unmock( 'is_denied_renewal' ); |
4226 |
$mock_item_class->unmock( 'is_denied_renewal' ); |
| 4224 |
}; |
4227 |
}; |
| 4225 |
|
4228 |
|
|
|
4229 |
subtest 'SendCirculationAlert test' => sub { |
| 4230 |
plan tests => 4; |
| 4231 |
|
| 4232 |
my $library = $builder->build( { source => 'Branch' } ); |
| 4233 |
my $patron = $builder->build( { source => 'Borrower' } ); |
| 4234 |
my $attribute = Koha::Patron::MessagePreference::Attributes->find({ |
| 4235 |
message_name => 'Item_Checkout', |
| 4236 |
}); |
| 4237 |
Koha::Patron::MessagePreference->new({ |
| 4238 |
borrowernumber => $patron->{'borrowernumber'}, |
| 4239 |
message_attribute_id => $attribute->message_attribute_id, |
| 4240 |
days_in_advance => undef, |
| 4241 |
wants_digest => 0, |
| 4242 |
message_transport_types => ['email'], |
| 4243 |
})->store; |
| 4244 |
my $biblioitem_1 = $builder->build( { source => 'Biblioitem' } ); |
| 4245 |
my $item_1 = $builder->build( |
| 4246 |
{ source => 'Item', |
| 4247 |
value => { |
| 4248 |
homebranch => $library->{branchcode}, |
| 4249 |
holdingbranch => $library->{branchcode}, |
| 4250 |
notforloan => 0, |
| 4251 |
itemlost => 0, |
| 4252 |
withdrawn => 0, |
| 4253 |
biblionumber => $biblioitem_1->{biblionumber} |
| 4254 |
} |
| 4255 |
} |
| 4256 |
); |
| 4257 |
|
| 4258 |
my $old_message = C4::Message->find_last_message($patron, 'CHECKOUT', 'email'); |
| 4259 |
$old_message->{'message_id'} = 0 unless $old_message; |
| 4260 |
is(C4::Circulation::SendCirculationAlert({ |
| 4261 |
type => 'CHECKOUT', |
| 4262 |
item => $item_1, |
| 4263 |
borrower => $patron, |
| 4264 |
branch => $library->{'branchcode'}, |
| 4265 |
}), undef, "SendCirculationAlert called."); |
| 4266 |
my $new_message = C4::Message->find_last_message($patron, 'CHECKOUT', 'email'); |
| 4267 |
ok($old_message->{'message_id'} != $new_message->{'message_id'}, "New message has appeared."); |
| 4268 |
is($new_message->{'letter_code'}, 'CHECKOUT', "New message letter code is CHECKOUT."); |
| 4269 |
is($new_message->{'borrowernumber'}, $patron->{'borrowernumber'}, "New message is to our test patron."); |
| 4270 |
}; |
| 4271 |
|
| 4226 |
subtest 'CanBookBeIssued | item-level_itypes=biblio' => sub { |
4272 |
subtest 'CanBookBeIssued | item-level_itypes=biblio' => sub { |
| 4227 |
plan tests => 2; |
4273 |
plan tests => 2; |
| 4228 |
|
4274 |
|