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.
97 lines
1.8 KiB
97 lines
1.8 KiB
11 years ago
|
<?php
|
||
|
|
||
|
namespace yiiunit\framework\email;
|
||
|
|
||
|
use Yii;
|
||
|
use yii\base\View;
|
||
|
use yii\email\BaseMailer;
|
||
|
use yii\email\BaseMessage;
|
||
|
use yiiunit\TestCase;
|
||
|
|
||
|
/**
|
||
|
* @group email
|
||
|
*/
|
||
|
class BaseMailerTest extends TestCase
|
||
|
{
|
||
|
public function setUp()
|
||
|
{
|
||
|
$this->mockApplication();
|
||
|
Yii::$app->setComponent('email', $this->createTestEmailComponent());
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @return Mailer test email component instance.
|
||
|
*/
|
||
|
protected function createTestEmailComponent()
|
||
|
{
|
||
|
$component = new Mailer();
|
||
|
return $component;
|
||
|
}
|
||
|
|
||
|
// Tests :
|
||
|
|
||
|
public function testSetupView()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
|
||
|
$view = new View();
|
||
|
$mailer->setView($view);
|
||
|
$this->assertEquals($view, $mailer->getView(), 'Unable to setup view!');
|
||
|
}
|
||
|
|
||
|
public function testGetDefaultView()
|
||
|
{
|
||
|
$mailer = new Mailer();
|
||
|
$view = $mailer->getView();
|
||
|
$this->assertTrue(is_object($view), 'Unable to get default view!');
|
||
|
}
|
||
|
|
||
|
public function testDefaultMessageConfig()
|
||
|
{
|
||
|
$defaultMessageConfig = array(
|
||
|
'id' => 'test-id',
|
||
|
'encoding' => 'test-encoding',
|
||
|
);
|
||
|
Yii::$app->getComponent('email')->setDefaultMessageConfig($defaultMessageConfig);
|
||
|
|
||
|
$message = new Message();
|
||
|
|
||
|
foreach ($defaultMessageConfig as $name => $value) {
|
||
|
$this->assertEquals($value, $message->$name);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Test Mailer class
|
||
|
*/
|
||
|
class Mailer extends BaseMailer
|
||
|
{
|
||
|
public $sentMessages = array();
|
||
|
|
||
|
public function send($message)
|
||
|
{
|
||
|
$this->sentMessages[] = $message;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Test Message class
|
||
|
*/
|
||
|
class Message extends BaseMessage
|
||
|
{
|
||
|
public $id;
|
||
|
public $encoding;
|
||
|
|
||
|
public function setFrom($from) {}
|
||
|
|
||
|
public function setTo($to) {}
|
||
|
|
||
|
public function setSubject($subject) {}
|
||
|
|
||
|
public function setText($text) {}
|
||
|
|
||
|
public function setHtml($html) {}
|
||
|
|
||
|
public function createAttachment($content, $fileName, $contentType = 'application/octet-stream') {}
|
||
|
}
|