Files
roundcubemail/tests/Framework/SmtpTest.php
Michael Voříšek 736795326c Fix plugins composer.json format (#9405)
* Check plugins composer.json using CI

* Add "require-dev" and "config.allow-plugins" to plugins

* fix composer.json format - rm invalid email

* fix composer.json format - fix ext require

* fix composer.json format - fix plugin name

* tmp

* Revert "tmp"

* fix ext in ext install

* disable plugin in plugin install until Roundcube is fully autoloadable

* fix composer.json format - fix non-canonical license name

* Revert "Add "require-dev" and "config.allow-plugins" to plugins"

* no composer install for plugins needed

* Revert "fix ext in ext install"

* add standard "Test" suffix to phpunit files

* rm unneeded "suffix" in phpunit config

* simplify phpunit config

* fix default "xhtml" doctype in unit testing

* fix test_format_date test to not rely on other tests

* even more phpunit config simplify

* stricter/unify phpunit params for E2E tests

* run E2E tests on maximal php version too with lowest deps

* "repositories" in bundled plugins are useless as for root package only

* add/unify missing plugin test
2024-04-05 17:55:46 +02:00

59 lines
1.7 KiB
PHP

<?php
use PHPUnit\Framework\TestCase;
/**
* Test class to test rcube_smtp class
*/
class Framework_Smtp extends TestCase
{
/**
* Class constructor
*/
public function test_class()
{
$object = new rcube_smtp();
$this->assertInstanceOf('rcube_smtp', $object, 'Class constructor');
}
/**
* Test preparing headers
*/
public function test_prepare_headers()
{
$smtp = new rcube_smtp();
$headers = [
'Subject' => 'Test',
'From' => '"John Doe" <john@domain.tld>',
'Received' => 'from github.com ([10.48.109.45]) by smtp.github.com (Postfix) with ESMTPA id 8C9B4E0075'
. ' for <john@domain.tld>; Sat, 28 Nov 2020 22:45:44 -0800 (PST)',
];
$result = invokeMethod($smtp, '_prepare_headers', [$headers]);
$this->assertCount(2, $result);
$this->assertSame('john@domain.tld', $result[0]);
$this->assertSame(
'Received: from github.com ([10.48.109.45]) by smtp.github.com (Postfix) with ESMTPA id 8C9B4E0075'
. " for <john@domain.tld>; Sat, 28 Nov 2020 22:45:44 -0800 (PST)\r\n"
. "Subject: Test\r\n"
. "From: \"John Doe\" <john@domain.tld>\r\n",
$result[1]
);
}
/**
* Test parsing email address input
*/
public function test_parse_rfc822()
{
$smtp = new rcube_smtp();
$input = 'test@test1.com, "test" <test@test2.pl>, "test@test3.eu" <test@test3.uk>';
$result = invokeMethod($smtp, '_parse_rfc822', [$input]);
$this->assertSame(['test@test1.com', 'test@test2.pl', 'test@test3.uk'], $result);
}
}