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.
		
		
		
		
		
			
		
			
				
					
					
						
							76 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
	
	
							76 lines
						
					
					
						
							1.7 KiB
						
					
					
				| <?php | |
|  | |
| namespace yiiunit\extensions\swiftmailer; | |
|  | |
| use Yii; | |
| use yii\swiftmailer\Mailer; | |
| use yii\swiftmailer\Message; | |
| use yiiunit\VendorTestCase; | |
|  | |
| /** | |
|  * @group vendor | |
|  * @group email | |
|  * @group swiftmailer | |
|  */ | |
| class MailerTest extends VendorTestCase | |
| { | |
| 	public function setUp() | |
| 	{ | |
| 		$this->mockApplication([ | |
| 			'components' => [ | |
| 				'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!'); | |
| 	} | |
| } |