You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.8 KiB
74 lines
1.8 KiB
11 years ago
|
<?php
|
||
|
|
||
11 years ago
|
namespace yiiunit\extensions\swiftmailer;
|
||
11 years ago
|
|
||
|
use Yii;
|
||
11 years ago
|
use yii\swiftmailer\Mailer;
|
||
|
use yii\swiftmailer\Message;
|
||
11 years ago
|
use yiiunit\TestCase;
|
||
|
|
||
|
/**
|
||
|
* @group email
|
||
|
* @group swiftmailer
|
||
|
*/
|
||
|
class MailerTest extends TestCase
|
||
|
{
|
||
|
public function setUp()
|
||
|
{
|
||
|
$this->mockApplication(array(
|
||
|
'vendorPath' => Yii::getAlias('@yiiunit/vendor')
|
||
|
));
|
||
|
Yii::$app->setComponent('email', $this->createTestEmailComponent());
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @return Mailer test email component instance.
|
||
|
*/
|
||
|
protected function createTestEmailComponent()
|
||
|
{
|
||
|
$component = new Mailer();
|
||
|
return $component;
|
||
|
}
|
||
|
|
||
|
// Tests :
|
||
|
|
||
|
public function testSetupTransport()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
|
||
|
$transport = \Swift_MailTransport::newInstance();
|
||
|
$mailer->setTransport($transport);
|
||
|
$this->assertEquals($transport, $mailer->getTransport(), 'Unable to setup transport!');
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @depends testSetupTransport
|
||
|
*/
|
||
|
public function testConfigureTransport()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
|
||
|
$transportConfig = [
|
||
|
'class' => 'Swift_SmtpTransport',
|
||
|
'host' => 'localhost',
|
||
|
];
|
||
|
$mailer->setTransport($transportConfig);
|
||
|
$transport = $mailer->getTransport();
|
||
|
$this->assertTrue(is_object($transport), 'Unable to setup transport via config!');
|
||
|
$this->assertEquals($transportConfig['class'], get_class($transport), 'Invalid transport class!');
|
||
|
$this->assertEquals($transportConfig['host'], $transport->getHost(), 'Invalid transport host!');
|
||
|
}
|
||
|
|
||
|
public function testGetSwiftMailer()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
$this->assertTrue(is_object($mailer->getSwiftMailer()), 'Unable to get Swift mailer instance!');
|
||
|
}
|
||
|
|
||
|
public function testCreateSwiftMessage()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
$message = $mailer->createSwiftMessage();
|
||
|
$this->assertTrue(is_object($message), 'Unable to create Swift message instance!');
|
||
|
}
|
||
|
}
|