Bug 34731: Throw exception if SendQueuedMessages is passed a bad message_id
Test Plan: 1) Apply this patch 2) prove t/db_dependent/Letters.t Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
This commit is contained in:
parent
1392fbe90f
commit
868af0015f
|
|
@ -25,18 +25,20 @@ use Module::Load::Conditional qw( can_load );
|
|||
|
||||
use Try::Tiny;
|
||||
|
||||
use C4::Members;
|
||||
use C4::Log qw( logaction );
|
||||
use C4::Members;
|
||||
use C4::SMS;
|
||||
use C4::Templates;
|
||||
use Koha::SMS::Providers;
|
||||
|
||||
use Koha::Auth::TwoFactorAuth;
|
||||
use Koha::DateUtils qw( dt_from_string output_pref );
|
||||
use Koha::Email;
|
||||
use Koha::Exceptions;
|
||||
use Koha::Notice::Messages;
|
||||
use Koha::Notice::Templates;
|
||||
use Koha::DateUtils qw( dt_from_string output_pref );
|
||||
use Koha::Auth::TwoFactorAuth;
|
||||
use Koha::Patrons;
|
||||
use Koha::SMS::Providers;
|
||||
use Koha::SMTP::Servers;
|
||||
use Koha::Subscriptions;
|
||||
|
||||
|
|
@ -973,6 +975,9 @@ Returns number of messages sent.
|
|||
sub SendQueuedMessages {
|
||||
my $params = shift;
|
||||
|
||||
Koha::Exceptions::BadParameter->throw("Parameter message_id cannot be empty if passed.")
|
||||
if ( exists( $params->{message_id} ) && !$params->{message_id} );
|
||||
|
||||
my $which_unsent_messages = {
|
||||
'message_id' => $params->{'message_id'},
|
||||
'limit' => $params->{'limit'} // 0,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
# along with Koha; if not, see <http://www.gnu.org/licenses>.
|
||||
|
||||
use Modern::Perl;
|
||||
use Test::More tests => 89;
|
||||
use Test::More tests => 92;
|
||||
use Test::MockModule;
|
||||
use Test::Warn;
|
||||
use Test::Exception;
|
||||
|
|
@ -153,6 +153,22 @@ my $yesterday = dt_from_string->subtract( days => 1 );
|
|||
Koha::Notice::Messages->find($messages->[0]->{message_id})->time_queued($yesterday)->store;
|
||||
|
||||
# SendQueuedMessages
|
||||
|
||||
throws_ok {
|
||||
C4::Letters::SendQueuedMessages( { message_id => undef } );
|
||||
}
|
||||
'Koha::Exceptions::BadParameter', 'Undef message_id throws an exception';
|
||||
|
||||
throws_ok {
|
||||
C4::Letters::SendQueuedMessages( { message_id => 0 } );
|
||||
}
|
||||
'Koha::Exceptions::BadParameter', 'message_id of 0 throws an exception';
|
||||
|
||||
throws_ok {
|
||||
C4::Letters::SendQueuedMessages( { message_id => q{} } );
|
||||
}
|
||||
'Koha::Exceptions::BadParameter', 'Empty string message_id throws an exception';
|
||||
|
||||
my $messages_processed = C4::Letters::SendQueuedMessages( { type => 'email' });
|
||||
is($messages_processed, 0, 'No queued messages processed if type limit passed with unused type');
|
||||
$messages_processed = C4::Letters::SendQueuedMessages( { type => 'sms' });
|
||||
|
|
|
|||
Loading…
Reference in New Issue