BUG When asserting an email was sent, sanitise both the To and From field

This commit is contained in:
Maxime Rainville 2021-09-09 19:23:37 +12:00
parent c69bc3719f
commit 1c698348a2

View File

@ -103,17 +103,18 @@ class TestMailer implements Mailer
foreach ($this->emailsSent as $email) {
$matched = true;
foreach (['To', 'From', 'Subject', 'Content'] as $field) {
// Loop all our Email fields
foreach ($compare as $field => $value) {
$emailValue = $email[$field];
if ($value = $compare[$field]) {
if ($field == 'To') {
if ($value) {
if (in_array($field, ['To', 'From'])) {
$emailValue = $this->normaliseSpaces($emailValue);
$value = $this->normaliseSpaces($value);
}
if ($value[0] == '/') {
if ($value[0] === '/') {
$matched = preg_match($value, $emailValue);
} else {
$matched = ($value == $emailValue);
$matched = ($value === $emailValue);
}
if (!$matched) {
break;