mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
Merge pull request #10089 from silverstripe/pulls/4.9/test-mailer-sanitise-from-as-well
BUG When asserting an email was sent, sanitise both the To and From field
This commit is contained in:
commit
575637612a
@ -103,17 +103,18 @@ class TestMailer implements Mailer
|
|||||||
foreach ($this->emailsSent as $email) {
|
foreach ($this->emailsSent as $email) {
|
||||||
$matched = true;
|
$matched = true;
|
||||||
|
|
||||||
foreach (['To', 'From', 'Subject', 'Content'] as $field) {
|
// Loop all our Email fields
|
||||||
|
foreach ($compare as $field => $value) {
|
||||||
$emailValue = $email[$field];
|
$emailValue = $email[$field];
|
||||||
if ($value = $compare[$field]) {
|
if ($value) {
|
||||||
if ($field == 'To') {
|
if (in_array($field, ['To', 'From'])) {
|
||||||
$emailValue = $this->normaliseSpaces($emailValue);
|
$emailValue = $this->normaliseSpaces($emailValue);
|
||||||
$value = $this->normaliseSpaces($value);
|
$value = $this->normaliseSpaces($value);
|
||||||
}
|
}
|
||||||
if ($value[0] == '/') {
|
if ($value[0] === '/') {
|
||||||
$matched = preg_match($value, $emailValue);
|
$matched = preg_match($value, $emailValue);
|
||||||
} else {
|
} else {
|
||||||
$matched = ($value == $emailValue);
|
$matched = ($value === $emailValue);
|
||||||
}
|
}
|
||||||
if (!$matched) {
|
if (!$matched) {
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user