@@ -60,5 +60,162 @@ public function testSetGet()
60
60
61
61
$ message ->setBcc ($ bcc );
62
62
$ this ->assertContains ($ bcc , array_keys ($ message ->getBcc ()), 'Unable to set bcc! ' );
63
+
64
+ $ text = 'Text email ' ;
65
+ $ message ->setTextBody ($ text );
66
+
67
+ $ html = '<a>Html email</a> ' ;
68
+ $ message ->setHtmlBody ($ html );
69
+
70
+ $ template = 'template-id ' ;
71
+ $ message ->setTemplateId ($ template );
72
+ $ this ->assertEquals ($ template , $ message ->getTemplateId ());
73
+
74
+ $ campaign = 'campaign-id ' ;
75
+ $ message ->setCampaign ($ campaign );
76
+ $ this ->assertEquals ($ campaign , $ message ->getCampaign ());
77
+
78
+ $ description = 'description ' ;
79
+ $ message ->setDescription ($ description );
80
+ $ this ->assertEquals ($ description , $ message ->getDescription ());
81
+
82
+ $ metadata = [
83
+ 'key ' => 'value ' ,
84
+ 'key1 ' => 'value1 ' ,
85
+ ];
86
+ $ message ->setMetadata ($ metadata );
87
+ $ this ->assertEquals ($ metadata , $ message ->getMetadata ());
88
+ }
89
+
90
+ public function testSubstitutionData ()
91
+ {
92
+ $ message = new Message ();
93
+
94
+ $ data = [
95
+ 'key ' => 'value ' ,
96
+ 'ke1 ' => 'value ' ,
97
+ 'keykey ' => [
98
+ '123 ' ,
99
+ '456 ' ,
100
+ '789 ' ,
101
+ ],
102
+ ];
103
+ $ message ->setSubstitutionData ($ data );
104
+ $ this ->assertEquals ($ data , $ message ->getSubstitutionData ());
105
+ }
106
+
107
+ public function testMultipleToAndCcBcc ()
108
+ {
109
+ $ message = new Message ();
110
+
111
+ $ recipients = [
112
+
113
+
114
+
115
+
116
+ ];
117
+
118
+ $ message ->setTo ($ recipients );
119
+ $ this ->assertEquals ($ recipients , $ message ->getTo ());
120
+
121
+ // check if cc, bcc do not affect 'to'
122
+
123
+ $ message ->setCc ($ cc );
124
+
125
+ $ bcc = [
126
+
127
+ '[email protected] ' =>
'bcc name ' ,
128
+ ];
129
+ $ message ->setBcc ($ bcc );
130
+
131
+ $ this ->assertEquals ($ recipients , $ message ->getTo ());
132
+
133
+ $ this ->assertEquals ([$ cc ], $ message ->getCc ());
134
+ $ this ->assertEquals ($ bcc , $ message ->getBcc ());
135
+ }
136
+
137
+ public function testAttachFile ()
138
+ {
139
+ $ message = new Message ();
140
+
141
+ $ fileName = __FILE__ ;
142
+ $ message ->attach ($ fileName );
143
+
144
+ $ attachments = $ message ->getAttachments ();
145
+ $ this ->assertCount (1 , $ attachments );
146
+ $ attachment = $ attachments [0 ];
147
+ $ this ->assertEquals ($ attachment ['name ' ], basename ($ fileName ));
148
+ $ this ->assertEquals ($ attachment ['type ' ], \yii \helpers \FileHelper::getMimeType ($ fileName ));
149
+ $ this ->assertEquals ($ attachment ['data ' ], base64_encode (file_get_contents ($ fileName )));
150
+
151
+ $ message ->attach ($ fileName );
152
+ $ attachments = $ message ->getAttachments ();
153
+ $ this ->assertCount (2 , $ attachments );
154
+ }
155
+
156
+ public function testAttachContent ()
157
+ {
158
+ $ message = new Message ();
159
+
160
+ $ fileName = 'test.txt ' ;
161
+ $ fileContent = 'Test attachment content ' ;
162
+ $ message ->attachContent ($ fileContent , ['fileName ' => $ fileName ]);
163
+
164
+ $ attachments = $ message ->getAttachments ();
165
+ $ this ->assertCount (1 , $ attachments );
166
+ $ attachment = $ attachments [0 ];
167
+ $ this ->assertEquals ($ attachment ['name ' ], $ fileName );
168
+ $ this ->assertEquals ($ attachment ['data ' ], base64_encode ($ fileContent ));
169
+
170
+ $ message ->attachContent ($ fileContent );
171
+ $ attachments = $ message ->getAttachments ();
172
+ $ this ->assertCount (2 , $ attachments );
173
+ $ attachment = $ attachments [1 ];
174
+ $ this ->assertEquals ($ attachment ['name ' ], 'file_1 ' );
175
+ }
176
+
177
+ public function testEmbedFile ()
178
+ {
179
+ $ message = new Message ();
180
+
181
+ $ fileName = __DIR__ . '/../test_image.png ' ;
182
+
183
+ $ cid = $ message ->embed ($ fileName );
184
+ $ this ->assertEquals ('image_0 ' , $ cid );
185
+
186
+ $ images = $ message ->getImages ();
187
+ $ this ->assertCount (1 , $ images );
188
+ $ image = $ images [0 ];
189
+ $ this ->assertEquals ($ image ['name ' ], 'test_image.png ' );
190
+ $ this ->assertEquals ($ image ['type ' ], \yii \helpers \FileHelper::getMimeType ($ fileName ));
191
+ $ this ->assertEquals ($ image ['data ' ], base64_encode (file_get_contents ($ fileName )));
192
+
193
+ $ cid1 = $ message ->embed ($ fileName );
194
+ $ images = $ message ->getImages ();
195
+ $ this ->assertEquals ('image_1 ' , $ cid1 );
196
+ $ this ->assertCount (2 , $ images );
197
+ }
198
+
199
+ public function testEmbedContent ()
200
+ {
201
+ $ message = new Message ();
202
+
203
+ $ fileName = __DIR__ . '/../test_image.png ' ;
204
+
205
+ $ cid = $ message ->embedContent (file_get_contents ($ fileName ), ['fileName ' => 'test_image.png ' ]);
206
+ $ this ->assertEquals ('image_0 ' , $ cid );
207
+
208
+ $ images = $ message ->getImages ();
209
+ $ this ->assertCount (1 , $ images );
210
+ $ image = $ images [0 ];
211
+ $ this ->assertEquals ($ image ['name ' ], 'test_image.png ' );
212
+ $ this ->assertEquals ($ image ['data ' ], base64_encode (file_get_contents ($ fileName )));
213
+
214
+ $ cid1 = $ message ->embedContent (file_get_contents ($ fileName ));
215
+ $ images = $ message ->getImages ();
216
+ $ this ->assertCount (2 , $ images );
217
+ $ image = $ images [1 ];
218
+ $ this ->assertEquals ($ image ['name ' ], 'image_1 ' );
219
+ $ this ->assertEquals ($ cid1 , 'image_1 ' );
63
220
}
64
221
}
0 commit comments