0
0
mirror of https://github.com/PHPMailer/PHPMailer.git synced 2024-09-20 01:52:15 +02:00

Add XMailer tests

This commit is contained in:
Marcus Bointon 2022-02-16 19:32:38 +01:00
parent b930f1587f
commit 6f6ce4f34a
No known key found for this signature in database
GPG Key ID: DE31CD6EB646AA24
2 changed files with 76 additions and 0 deletions

View File

@ -3,6 +3,7 @@
## WIP
* If we can't use escaping functions, refuse to do unsafe things
* Avoid PHP 8.1 trim issue
* Add tests for XMailer
## Version 6.5.3 (November 25th, 2021)
* Wrong commit tagged for the 6.5.2 release!

View File

@ -0,0 +1,75 @@
<?php
/**
* PHPMailer - PHP email transport unit tests.
* PHP version 5.5.
*
* @author Marcus Bointon <phpmailer@synchromedia.co.uk>
* @author Andy Prevost
* @copyright 2012 - 2020 Marcus Bointon
* @copyright 2004 - 2009 Andy Prevost
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
*/
namespace PHPMailer\Test\PHPMailer;
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\Test\TestCase;
/**
* Test XMailer header setting functionality.
*
* @covers \PHPMailer\PHPMailer\PHPMailer::XMailer
*/
final class XMailerTest extends TestCase
{
/**
* Test wrapping text.
*
* @dataProvider dataXMailer
*
* @param string $xmailer Input text string.
* @param string $expected Expected function output.
*/
public function testXMailer($xmailer, $expected)
{
$this->Mail->XMailer = $xmailer;
$headers = $this->Mail->createHeader();
if ($expected !== null) {
self::assertStringContainsString($expected, $headers);
} else {
self::assertStringNotContainsString('X-Mailer', $headers);
}
}
/**
* Data provider.
*
* @return array
*/
public function dataXMailer()
{
return [
'empty string' => [
'xmailer' => '',
'expected' => 'X-Mailer: PHPMailer ' . PHPMailer::VERSION . ' (https://github.com/PHPMailer/PHPMailer)',
],
'null' => [
'xmailer' => null,
'expected' => null,
],
'whitespace' => [
'xmailer' => ' ',
'expected' => null,
],
'non-empty string' => [
'xmailer' => 'test',
'expected' => 'X-Mailer: test',
],
'invalid value' => [
'xmailer' => [],
'expected' => null,
],
];
}
}