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 |
|