1*269d5ff4SAndreas Gohr<?php 2*269d5ff4SAndreas Gohr 3*269d5ff4SAndreas Gohruse \Tx\Mailer; 4*269d5ff4SAndreas Gohruse \Tx\Mailer\SMTP; 5*269d5ff4SAndreas Gohruse \Tx\Mailer\Message; 6*269d5ff4SAndreas Gohruse \Tx\Mailer\Exceptions\SMTPException; 7*269d5ff4SAndreas Gohruse \Monolog\Logger; 8*269d5ff4SAndreas Gohr 9*269d5ff4SAndreas Gohrclass MailerTest extends TestCase { 10*269d5ff4SAndreas Gohr 11*269d5ff4SAndreas Gohr protected $smtp; 12*269d5ff4SAndreas Gohr protected $message; 13*269d5ff4SAndreas Gohr 14*269d5ff4SAndreas Gohr public function setup(){ 15*269d5ff4SAndreas Gohr $this->smtp = new SMTP(new Logger('SMTP')); 16*269d5ff4SAndreas Gohr $this->message = new Message(); 17*269d5ff4SAndreas Gohr } 18*269d5ff4SAndreas Gohr 19*269d5ff4SAndreas Gohr public function testSMTP(){ 20*269d5ff4SAndreas Gohr $this->smtp 21*269d5ff4SAndreas Gohr ->setServer('smtp.ym.163.com', 25) 22*269d5ff4SAndreas Gohr ->setAuth('bot@ym.txthinking.com', ''); // email, password 23*269d5ff4SAndreas Gohr 24*269d5ff4SAndreas Gohr $this->message 25*269d5ff4SAndreas Gohr ->setFrom('Tom', 'bot@ym.txthinking.com') // your name, your email 26*269d5ff4SAndreas Gohr ->setFakeFrom('heelo', 'bot@hello.com') // a fake name, a fake email 27*269d5ff4SAndreas Gohr ->addTo('Cloud', 'cloud@txthinking.com') 28*269d5ff4SAndreas Gohr ->setSubject('Test SMTP ' . time()) 29*269d5ff4SAndreas Gohr ->setBody('<h1>for test</h1>') 30*269d5ff4SAndreas Gohr ->addAttachment('host', '/etc/hosts'); 31*269d5ff4SAndreas Gohr 32*269d5ff4SAndreas Gohr $status = $this->smtp->send($this->message); 33*269d5ff4SAndreas Gohr $this->assertTrue($status); 34*269d5ff4SAndreas Gohr } 35*269d5ff4SAndreas Gohr 36*269d5ff4SAndreas Gohr public function testSend(){ 37*269d5ff4SAndreas Gohr $status = (new Mailer(new Logger('Mailer'))) 38*269d5ff4SAndreas Gohr ->setServer('smtp.ym.163.com', 25) 39*269d5ff4SAndreas Gohr ->setAuth('bot@ym.txthinking.com', '') // email, password 40*269d5ff4SAndreas Gohr ->setFrom('Tom', 'bot@ym.txthinking.com') // your name, your email 41*269d5ff4SAndreas Gohr ->setFakeFrom('张全蛋', 'zhangquandan@hello.com') // a fake name, a fake email 42*269d5ff4SAndreas Gohr ->addTo('Cloud', 'cloud@txthinking.com') 43*269d5ff4SAndreas Gohr ->setSubject('hello '. time()) 44*269d5ff4SAndreas Gohr ->setBody('Hi, boy') 45*269d5ff4SAndreas Gohr ->addAttachment('host', '/etc/hosts') 46*269d5ff4SAndreas Gohr ->send(); 47*269d5ff4SAndreas Gohr $this->assertTrue($status); 48*269d5ff4SAndreas Gohr } 49*269d5ff4SAndreas Gohr 50*269d5ff4SAndreas Gohr} 51*269d5ff4SAndreas Gohr 52