18 lines
715 B
PHP
18 lines
715 B
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
require_once PLUGIN_ROOT . '/exec/lib/MailSender.php';
|
|
|
|
test('mail sender rejects subject header injection and builds utf8 message', function (): void {
|
|
try {
|
|
MailSender::buildMessage('from@example.com', 'to@example.com', "Bad\nSubject", 'Body');
|
|
} catch (InvalidArgumentException $e) {
|
|
assert_contains('subject', strtolower($e->getMessage()));
|
|
}
|
|
|
|
$message = MailSender::buildMessage('from@example.com', 'to@example.com', 'Temat', "Treść\nDruga linia");
|
|
assert_contains('Auto-Submitted: auto-replied', $message);
|
|
assert_contains('Content-Type: text/plain; charset=UTF-8', $message);
|
|
assert_contains("Subject: =?UTF-8?B?", $message);
|
|
});
|