Files
piratepoet/tests/unit/Mailer/MailerErrorTest.php
Rostislav Wolny 223c2e1562 Add subscriber errors passing via MailerError object
We want to process errors for individual subscribers.
Subscriber errors were inlined into error message string.
This commit changes this so that we are now able to get
subscriber errors as a data which are easy to process further.

[MAILPOET-1154]
2018-09-13 09:48:54 +02:00

41 lines
1.4 KiB
PHP

<?php
namespace MailPoet\Test\Mailer;
use MailPoet\Mailer\MailerError;
use MailPoet\Mailer\SubscriberError;
class MailerErrorTest extends \MailPoetTest {
function testItCanComposeErrorMessageWithoutSubscribers() {
$error = new MailerError(MailerError::OPERATION_SEND, MailerError::LEVEL_HARD, 'Some Message');
expect($error->getMessageWithFailedSubscribers())->equals('Some Message');
}
function testItCanComposeErrorMessageWithOneSubscriber() {
$subscriber_error = new SubscriberError('email@example.com', 'Subscriber message');
$error = new MailerError(
MailerError::OPERATION_SEND,
MailerError::LEVEL_HARD,
'Some Message',
null,
[$subscriber_error]
);
expect($error->getMessageWithFailedSubscribers())->equals('Some Message Unprocessed subscriber: (email@example.com: Subscriber message)');
}
function testItCanComposeErrorMessageWithMultipleSubscriberErrors() {
$subscriber_error_1 = new SubscriberError('email1@example.com', 'Subscriber 1 message');
$subscriber_error_2 = new SubscriberError('email2@example.com', null);
$error = new MailerError(
MailerError::OPERATION_SEND,
MailerError::LEVEL_HARD,
'Some Message',
null,
[$subscriber_error_1, $subscriber_error_2]
);
expect($error->getMessageWithFailedSubscribers())->equals(
'Some Message Unprocessed subscribers: (email1@example.com: Subscriber 1 message), (email2@example.com)'
);
}
}