diff --git a/mailpoet/tests/integration/Mailer/MailerTest.php b/mailpoet/tests/integration/Mailer/MailerTest.php index 2f865a9fa5..6da8204ba0 100644 --- a/mailpoet/tests/integration/Mailer/MailerTest.php +++ b/mailpoet/tests/integration/Mailer/MailerTest.php @@ -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 '); } - 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(); - } }