Does not display unprocessed subscriber when sending a test message

This commit is contained in:
Vlad
2017-02-24 11:07:46 -05:00
parent 9c27384ba3
commit d14ecc982b
7 changed files with 23 additions and 10 deletions

View File

@ -14,7 +14,10 @@ class Mailer extends APIEndpoint {
(isset($data['sender'])) ? $data['sender'] : false, (isset($data['sender'])) ? $data['sender'] : false,
(isset($data['reply_to'])) ? $data['reply_to'] : false (isset($data['reply_to'])) ? $data['reply_to'] : false
); );
$result = $mailer->send($data['newsletter'], $data['subscriber']); $extra_params = array(
'test_email' => true
);
$result = $mailer->send($data['newsletter'], $data['subscriber'], $extra_params);
} catch(\Exception $e) { } catch(\Exception $e) {
return $this->errorResponse(array( return $this->errorResponse(array(
$e->getCode() => $e->getMessage() $e->getCode() => $e->getMessage()

View File

@ -62,7 +62,9 @@ class AmazonSES {
$response = ($response) ? $response = ($response) ?
$response->Error->Message->__toString() : $response->Error->Message->__toString() :
sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_AMAZONSES); sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_AMAZONSES);
$response .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber); if(empty($extra_params['test_email'])) {
$response .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber);
}
return Mailer::formatMailerSendErrorResult($response); return Mailer::formatMailerSendErrorResult($response);
} }
return Mailer::formatMailerSendSuccessResult(); return Mailer::formatMailerSendSuccessResult();

View File

@ -37,7 +37,9 @@ class MailPoet {
if(!empty($result['code']) && $result['code'] === API::RESPONSE_CODE_KEY_INVALID) { if(!empty($result['code']) && $result['code'] === API::RESPONSE_CODE_KEY_INVALID) {
Bridge::invalidateKey(); Bridge::invalidateKey();
} }
$result['message'] .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber); if(empty($extra_params['test_email'])) {
$result['message'] .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber);
}
return Mailer::formatMailerSendErrorResult($result['message']); return Mailer::formatMailerSendErrorResult($result['message']);
case API::SENDING_STATUS_OK: case API::SENDING_STATUS_OK:
default: default:

View File

@ -31,7 +31,9 @@ class PHPMail {
return Mailer::formatMailerSendSuccessResult(); return Mailer::formatMailerSendSuccessResult();
} else { } else {
$result = sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_PHPMAIL); $result = sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_PHPMAIL);
$result .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber); if(empty($extra_params['test_email'])) {
$result .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber);
}
return Mailer::formatMailerSendErrorResult($result); return Mailer::formatMailerSendErrorResult($result);
} }
} }

View File

@ -48,7 +48,7 @@ class SMTP {
} }
return ($result === 1) ? return ($result === 1) ?
Mailer::formatMailerSendSuccessResult() : Mailer::formatMailerSendSuccessResult() :
Mailer::formatMailerSendErrorResult($this->processLogMessage($subscriber)); Mailer::formatMailerSendErrorResult($this->processLogMessage($subscriber, $extra_params));
} }
function buildMailer() { function buildMailer() {
@ -105,7 +105,7 @@ class SMTP {
); );
} }
function processLogMessage($subscriber, $log = false) { function processLogMessage($subscriber, $extra_params = array(), $log = false) {
$log = ($log) ? $log : $this->mailer_logger->dump(); $log = ($log) ? $log : $this->mailer_logger->dump();
// extract error message from log // extract error message from log
preg_match('/!! (.*?)>>/ism', $log, $message); preg_match('/!! (.*?)>>/ism', $log, $message);
@ -116,7 +116,9 @@ class SMTP {
} else { } else {
$message = sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_SMTP); $message = sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_SMTP);
} }
$message .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber); if(empty($extra_params['test_email'])) {
$message .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber);
}
return $message; return $message;
} }

View File

@ -30,7 +30,9 @@ class SendGrid {
$response = (!empty($response['errors'][0])) ? $response = (!empty($response['errors'][0])) ?
$response['errors'][0] : $response['errors'][0] :
sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_SENDGRID); sprintf(__('%s has returned an unknown error.', 'mailpoet'), Mailer::METHOD_SENDGRID);
$response .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber); if(empty($extra_params['test_email'])) {
$response .= sprintf(' %s: %s', __('Unprocessed subscriber', 'mailpoet'), $subscriber);
}
return Mailer::formatMailerSendErrorResult($response); return Mailer::formatMailerSendErrorResult($response);
} }
return Mailer::formatMailerSendSuccessResult(); return Mailer::formatMailerSendSuccessResult();

View File

@ -144,9 +144,9 @@ class SMTPTest extends MailPoetTest {
. '" (code: 550)' . PHP_EOL . '" (code: 550)' . PHP_EOL
. '>> RSET' . PHP_EOL . '>> RSET' . PHP_EOL
. '<< 250 Reset OK' . PHP_EOL; . '<< 250 Reset OK' . PHP_EOL;
expect($this->mailer->processLogMessage('test@example.com', $message)) expect($this->mailer->processLogMessage('test@example.com', $extra_params = array(), $message))
->equals('Expected response code 250/251/252 but got code "550", with message "550 No such recipient here" (code: 550) Unprocessed subscriber: test@example.com'); ->equals('Expected response code 250/251/252 but got code "550", with message "550 No such recipient here" (code: 550) Unprocessed subscriber: test@example.com');
expect($this->mailer->processLogMessage('test@example.com', $message)) expect($this->mailer->processLogMessage('test@example.com', $extra_params = array(), $message))
->equals('Expected response code 250/251/252 but got code "550", with message "550 No such recipient here" (code: 550) Unprocessed subscriber: test@example.com'); ->equals('Expected response code 250/251/252 but got code "550", with message "550 No such recipient here" (code: 550) Unprocessed subscriber: test@example.com');
} }