/** * @covers PHPUnit::execute */ public function testExecute_TestMailer() { $config = array('smtp_address' => 'mail.example.com', 'smtp_port' => 225, 'smtp_encryption' => true, 'smtp_username' => 'example.user', 'smtp_password' => 'examplepassword', 'default_mailto_address' => '*****@*****.**'); $factory = new MailerFactory(array('email_settings' => $config)); $mailer = $factory->getSwiftMailerFromConfig(); $this->assertEquals($config['smtp_address'], $mailer->getTransport()->getHost()); $this->assertEquals($config['smtp_port'], $mailer->getTransport()->getPort()); $this->assertEquals('tls', $mailer->getTransport()->getEncryption()); $this->assertEquals($config['smtp_username'], $mailer->getTransport()->getUsername()); $this->assertEquals($config['smtp_password'], $mailer->getTransport()->getPassword()); }
protected function sendViaSwiftMailer() { $factory = new MailerFactory($this->config->get('phpci')); $mailer = $factory->getSwiftMailerFromConfig(); $message = \Swift_Message::newInstance($this->subject)->setFrom($this->getFrom())->setTo($this->emailTo)->setBody($this->body); if ($this->isHtml) { $message->setContentType('text/html'); } if (is_array($this->emailCc) && count($this->emailCc)) { $message->setCc($this->emailCc); } return $mailer->send($message); }
/** * Returns a configured instance of the plugin factory. * * @param Build $build * @return PluginFactory */ private function buildPluginFactory(Build $build) { $pluginFactory = new PluginFactory(); $self = $this; $pluginFactory->registerResource(function () use($self) { return $self; }, null, 'PHPCI\\Builder'); $pluginFactory->registerResource(function () use($build) { return $build; }, null, 'PHPCI\\Model\\Build'); $logger = $this->logger; $pluginFactory->registerResource(function () use($logger) { return $logger; }, null, 'Psr\\Log\\LoggerInterface'); $pluginFactory->registerResource(function () use($self) { $factory = new MailerFactory($self->getSystemConfig('phpci')); return $factory->getSwiftMailerFromConfig(); }, null, 'Swift_Mailer'); return $pluginFactory; }