Bug 30838: (QA follow-up) Add unit tests
Two tests added, one in t/db_dependent/Circulation.t to catch the
initial setting of to_address at enqueue time and a second in
t/db_dependent/Letters.t to catch the correcting at send time.
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 467b444c7e)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
parent
3805235e45
commit
899898400f
|
|
@ -5304,7 +5304,7 @@ subtest "updateWrongTransfer tests" => sub {
|
|||
};
|
||||
|
||||
subtest "SendCirculationAlert" => sub {
|
||||
plan tests => 2;
|
||||
plan tests => 3;
|
||||
|
||||
# When you would unsuspectingly call this unit test (with perl, not prove), you will be bitten by LOCK.
|
||||
# LOCK will commit changes and ruin your data
|
||||
|
|
@ -5317,7 +5317,7 @@ subtest "SendCirculationAlert" => sub {
|
|||
my $patron = $builder->build_object({ class => 'Koha::Patrons' });
|
||||
C4::Members::Messaging::SetMessagingPreference({
|
||||
borrowernumber => $patron->id,
|
||||
message_transport_types => ['email'],
|
||||
message_transport_types => ['sms'],
|
||||
message_attribute_id => 5
|
||||
});
|
||||
my $item = $builder->build_sample_item();
|
||||
|
|
@ -5330,7 +5330,7 @@ subtest "SendCirculationAlert" => sub {
|
|||
name => 'Test Checkin',
|
||||
is_html => 0,
|
||||
content => "Checkins:\n----\n[% biblio.title %]-[% old_checkout.issue_id %]\n----Thank you.",
|
||||
message_transport_type => 'email',
|
||||
message_transport_type => 'sms',
|
||||
lang => 'default'
|
||||
}
|
||||
})->store;
|
||||
|
|
@ -5347,6 +5347,7 @@ subtest "SendCirculationAlert" => sub {
|
|||
});
|
||||
my $notice = Koha::Notice::Messages->find({ borrowernumber => $patron->id, letter_code => 'CHECKIN' });
|
||||
is($notice->content,"Checkins:\n".$item->biblio->title."-".$issue_1->id."\nThank you.", 'Letter generated with expected output on first checkin' );
|
||||
is($notice->to_address, $patron->smsalertnumber, "Letter has the correct to_address set to smsalertnumber for SMS type notices");
|
||||
|
||||
# Checkout an item, mark it returned, generate a notice
|
||||
my $issue_2 = AddIssue( $patron->unblessed, $item->barcode);
|
||||
|
|
|
|||
|
|
@ -779,9 +779,9 @@ subtest 'TranslateNotices' => sub {
|
|||
|
||||
};
|
||||
|
||||
subtest 'SendQueuedMessages' => sub {
|
||||
subtest 'Test SMS handling in SendQueuedMessages' => sub {
|
||||
|
||||
plan tests => 12;
|
||||
plan tests => 13;
|
||||
|
||||
t::lib::Mocks::mock_preference( 'SMSSendDriver', 'Email' );
|
||||
t::lib::Mocks::mock_preference('EmailSMSSendDriverFromAddress', '');
|
||||
|
|
@ -855,6 +855,19 @@ subtest 'SendQueuedMessages' => sub {
|
|||
})->next()->to_address();
|
||||
is( $sms_message_address, '5555555555@kidclamp.rocks', 'SendQueuedMessages populates the to address correctly for SMS by email when to_address is set incorrectly' );
|
||||
|
||||
# Test using SMS::Send::Test driver that's bundled with SMS::Send
|
||||
t::lib::Mocks::mock_preference('SMSSendDriver', "AU::Test");
|
||||
|
||||
$schema->resultset('MessageQueue')->search({borrowernumber => $borrowernumber, status => 'sent'})->delete(); #clear borrower queue
|
||||
C4::Letters::EnqueueLetter($my_message);
|
||||
C4::Letters::SendQueuedMessages();
|
||||
|
||||
$sms_message_address = $schema->resultset('MessageQueue')->search({
|
||||
borrowernumber => $borrowernumber,
|
||||
status => 'sent'
|
||||
})->next()->to_address();
|
||||
is( $sms_message_address, '5555555555', 'SendQueuedMessages populates the to address correctly for SMS by SMS::Send driver to smsalertnumber when to_address is set incorrectly' );
|
||||
|
||||
};
|
||||
|
||||
subtest 'get_item_content' => sub {
|
||||
|
|
|
|||
Loading…
Reference in New Issue