Remove factory functionality test cases from MailerTest
[MAILPOET-4115]
This commit is contained in:
committed by
Veljko V
parent
36edab34e6
commit
6cd22a1abe
@@ -3,8 +3,6 @@
|
||||
namespace MailPoet\Test\Mailer;
|
||||
|
||||
use MailPoet\Mailer\Mailer;
|
||||
use MailPoet\Settings\SettingsController;
|
||||
use MailPoet\Settings\SettingsRepository;
|
||||
use MailPoet\Test\DataFactories\Subscriber as SubscriberFactory;
|
||||
|
||||
class MailerTest extends \MailPoetTest {
|
||||
@@ -16,39 +14,8 @@ class MailerTest extends \MailPoetTest {
|
||||
public $sender;
|
||||
public $availableMailerMethods;
|
||||
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
public function _before() {
|
||||
parent::_before();
|
||||
$this->availableMailerMethods = [
|
||||
[
|
||||
'method' => 'AmazonSES',
|
||||
'region' => 'us-west-2',
|
||||
'access_key' => '1234567890',
|
||||
'secret_key' => 'abcdefghijk',
|
||||
],
|
||||
[
|
||||
'method' => 'MailPoet',
|
||||
'mailpoet_api_key' => 'abcdefghijk',
|
||||
],
|
||||
[
|
||||
'method' => 'SendGrid',
|
||||
'api_key' => 'abcdefghijk',
|
||||
],
|
||||
[
|
||||
'method' => 'PHPMail',
|
||||
],
|
||||
[
|
||||
'method' => 'SMTP',
|
||||
'host' => 'example.com',
|
||||
'port' => 25,
|
||||
'authentication' => true,
|
||||
'login' => 'username',
|
||||
'password' => 'password',
|
||||
'encryption' => 'tls',
|
||||
],
|
||||
];
|
||||
$this->sender = [
|
||||
'name' => 'Sender',
|
||||
'address' => 'staff@mailinator.com',
|
||||
@@ -72,67 +39,6 @@ class MailerTest extends \MailPoetTest {
|
||||
'text' => 'TEXT body',
|
||||
],
|
||||
];
|
||||
$this->settings = SettingsController::getInstance();
|
||||
}
|
||||
|
||||
public function testItRequiresMailerMethod() {
|
||||
// reset mta settings so that we have no default mailer
|
||||
$this->settings->set('mta', null);
|
||||
try {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init();
|
||||
$this->fail('Mailer did not throw an exception');
|
||||
} catch (\Exception $e) {
|
||||
expect($e->getMessage())->equals('Mailer is not configured.');
|
||||
}
|
||||
}
|
||||
|
||||
public function testItRequiresSender() {
|
||||
try {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($mailer = $this->mailer);
|
||||
$this->fail('Mailer did not throw an exception');
|
||||
} catch (\Exception $e) {
|
||||
expect($e->getMessage())->equals('Sender name and email are not configured.');
|
||||
}
|
||||
}
|
||||
|
||||
public function testItCanConstruct() {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $this->sender, $this->replyTo, $this->returnPath);
|
||||
expect($mailer->sender['from_name'])->equals($this->sender['name']);
|
||||
expect($mailer->sender['from_email'])->equals($this->sender['address']);
|
||||
expect($mailer->replyTo['reply_to_name'])->equals($this->replyTo['name']);
|
||||
expect($mailer->replyTo['reply_to_email'])->equals($this->replyTo['address']);
|
||||
expect($mailer->returnPath)->equals($this->returnPath);
|
||||
}
|
||||
|
||||
public function testItThrowsUnknownMailerException() {
|
||||
try {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init(['method' => 'Unknown'], $this->sender);
|
||||
$this->fail('Mailer did not throw an exception');
|
||||
} catch (\Exception $e) {
|
||||
expect($e->getMessage())->equals('Mailing method does not exist.');
|
||||
}
|
||||
}
|
||||
|
||||
public function testItSetsReplyToAddressWhenOnlyNameIsAvailable() {
|
||||
$replyTo = ['name' => 'test'];
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $this->sender, $replyTo);
|
||||
$replyTo = $mailer->getReplyToNameAndAddress();
|
||||
expect($replyTo['reply_to_email'])->equals($this->sender['address']);
|
||||
}
|
||||
|
||||
public function testItGetsReturnPathAddress() {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $this->sender, $this->replyTo);
|
||||
$returnPath = $mailer->getReturnPathAddress('bounce@test.com');
|
||||
expect($returnPath)->equals('bounce@test.com');
|
||||
$this->settings->set('bounce', ['address' => 'settngs_bounce@test.com']);
|
||||
$returnPath = $mailer->getReturnPathAddress($returnPath = false);
|
||||
expect($returnPath)->equals('settngs_bounce@test.com');
|
||||
}
|
||||
|
||||
public function testItCanTransformSubscriber() {
|
||||
@@ -172,27 +78,6 @@ class MailerTest extends \MailPoetTest {
|
||||
)->equals('First Last <test@email.com>');
|
||||
}
|
||||
|
||||
public function testItCanConvertNonASCIIEmailAddressString() {
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $this->sender, $this->replyTo);
|
||||
expect($mailer->sender['from_name'])->equals($this->sender['name']);
|
||||
expect($mailer->replyTo['reply_to_name'])->equals($this->replyTo['name']);
|
||||
$sender = [
|
||||
'name' => 'Sender Außergewöhnlichen тест системы',
|
||||
'address' => 'staff@mailinator.com',
|
||||
];
|
||||
$replyTo = [
|
||||
'name' => 'Reply-To Außergewöhnlichen тест системы',
|
||||
'address' => 'staff@mailinator.com',
|
||||
];
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $sender, $replyTo);
|
||||
expect($mailer->sender['from_name'])
|
||||
->equals(sprintf('=?utf-8?B?%s?=', base64_encode($sender['name'])));
|
||||
expect($mailer->replyTo['reply_to_name'])
|
||||
->equals(sprintf('=?utf-8?B?%s?=', base64_encode($replyTo['name'])));
|
||||
}
|
||||
|
||||
public function testItCanSend() {
|
||||
if (getenv('WP_TEST_MAILER_ENABLE_SENDING') !== 'true') $this->markTestSkipped();
|
||||
$this->sender['address'] = 'staff@mailpoet.com';
|
||||
@@ -218,18 +103,4 @@ class MailerTest extends \MailPoetTest {
|
||||
$result = $mailer->send($this->newsletter, $subscriber);
|
||||
expect($result['response'])->true();
|
||||
}
|
||||
|
||||
public function testItIgnoresInvalidBounceAddress() {
|
||||
$this->settings->set('bounce.address', 'ok@address.com');
|
||||
$mailer = new Mailer();
|
||||
$mailer->init($this->mailer, $this->sender, $this->replyTo);
|
||||
expect($mailer->returnPath)->equals('ok@address.com');
|
||||
$this->settings->set('bounce.address', 'invalid');
|
||||
$mailer->init($this->mailer, $this->sender, $this->replyTo);
|
||||
expect($mailer->returnPath)->null();
|
||||
}
|
||||
|
||||
public function _after() {
|
||||
$this->diContainer->get(SettingsRepository::class)->truncate();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user