@@ -54,23 +54,70 @@ public function testConfig() {
5454 * @return void
5555 */
5656 public function testSendWithEmail () {
57- $ Email = new Email ();
57+ $ config = [
58+ 'transport ' => 'queue ' ,
59+ 'charset ' => 'utf-8 ' ,
60+ 'headerCharset ' => 'utf-8 ' ,
61+ ];
62+
63+ $ this ->QueueTransport ->config ($ config );
64+ $ Email = new Email ($ config );
65+
5866 $ Email->
from (
'[email protected] ' ,
'CakePHP Test ' );
5967 $ Email->
to (
'[email protected] ' ,
'CakePHP ' );
6068 $ Email->
cc ([
'[email protected] ' =>
'Mark Story ' ,
'[email protected] ' =>
'Juan Basso ' ]);
61696270 $ Email ->subject ('Testing Message ' );
63- $ Email ->transport ('queue ' );
64- $ config = $ Email ->config ('default ' );
65- $ this ->QueueTransport ->config ($ config );
71+ $ Email ->attachments (['wow.txt ' => [
72+ 'data ' => 'much wow! ' ,
73+ 'mimetype ' => 'text/plain ' ,
74+ 'contentId ' => 'important '
75+ ]]);
76+
77+ $ Email ->template ('test_template ' , 'test_layout ' );
78+ $ Email ->subject ('Testing Message ' );
79+ $ Email->
replyTo (
'[email protected] ' );
80+ $ Email->
readReceipt (
'[email protected] ' );
81+ $ Email->
returnPath (
'[email protected] ' );
82+ $ Email ->domain ('cakephp.org ' );
83+ $ Email ->theme ('EuroTheme ' );
84+ $ Email ->emailFormat ('both ' );
85+ $ Email ->set ('var1 ' , 1 );
86+ $ Email ->set ('var2 ' , 2 );
6687
6788 $ result = $ this ->QueueTransport ->send ($ Email );
6889 $ this ->assertEquals ('Email ' , $ result ['jobtype ' ]);
6990 $ this ->assertTrue (strlen ($ result ['data ' ]) < 10000 );
7091
7192 $ output = unserialize ($ result ['data ' ]);
93+ $ emailReconstructed = new Email ($ config );
94+
95+ foreach ($ output ['settings ' ] as $ method => $ setting ) {
96+ call_user_func_array ([$ emailReconstructed , $ method ], (array )$ setting );
97+ }
98+
99+ $ this ->assertEquals ($ emailReconstructed ->from (), $ Email ->from ());
100+ $ this ->assertEquals ($ emailReconstructed ->to (), $ Email ->to ());
101+ $ this ->assertEquals ($ emailReconstructed ->cc (), $ Email ->cc ());
102+ $ this ->assertEquals ($ emailReconstructed ->bcc (), $ Email ->bcc ());
103+ $ this ->assertEquals ($ emailReconstructed ->subject (), $ Email ->subject ());
104+ $ this ->assertEquals ($ emailReconstructed ->charset (), $ Email ->charset ());
105+ $ this ->assertEquals ($ emailReconstructed ->headerCharset (), $ Email ->headerCharset ());
106+ $ this ->assertEquals ($ emailReconstructed ->emailFormat (), $ Email ->emailFormat ());
107+ $ this ->assertEquals ($ emailReconstructed ->replyTo (), $ Email ->replyTo ());
108+ $ this ->assertEquals ($ emailReconstructed ->readReceipt (), $ Email ->readReceipt ());
109+ $ this ->assertEquals ($ emailReconstructed ->returnPath (), $ Email ->returnPath ());
110+ $ this ->assertEquals ($ emailReconstructed ->messageId (), $ Email ->messageId ());
111+ $ this ->assertEquals ($ emailReconstructed ->domain (), $ Email ->domain ());
112+ $ this ->assertEquals ($ emailReconstructed ->theme (), $ Email ->theme ());
113+ $ this ->assertEquals ($ emailReconstructed ->profile (), $ Email ->profile ());
114+ $ this ->assertEquals ($ emailReconstructed ->viewVars (),$ Email ->viewVars ());
115+ $ this ->assertEquals ($ emailReconstructed ->template (),$ Email ->template ());
116+
117+ //for now cannot be done 'data' is base64_encode on set but not decoded when get from $email
118+ //$this->assertEquals($emailReconstructed->attachments(),$Email->attachments());
119+
72120 //debug($output);
73121 //$this->assertEquals($Email, $output['settings']);
74122 }
75-
76123}
0 commit comments