@@ -111,6 +111,59 @@ public function testToString()
111
111
public function testFromString ()
112
112
{
113
113
114
+ /**
115
+ * @see conjoon/php-lib-conjoon#12
116
+ */
117
+ $ tests = [
118
+ [
119
+ [
"Peter, Parker " ,
"[email protected] " ],
120
+ [
"\"Peter, Parker \"" ,
"[email protected] " ]
121
+ ],
122
+ [
123
+ [
"Parker Peter " ,
"[email protected] " ],
124
+ [
"Parker Peter " ,
"[email protected] " ],
125
+ ],
126
+ [
127
+ [
"Parker \" Peter " ,
"[email protected] " ],
128
+ [
"\"Parker \\\" Peter \"" ,
"[email protected] " ],
129
+ ],
130
+ [
131
+ [
"Parker ' Peter " ,
"[email protected] " ],
132
+ [
"\"Parker \' Peter \"" ,
"[email protected] " ],
133
+ ],
134
+ [
135
+ [
"Parker \"Parker, Peter Peter " ,
"[email protected] " ],
136
+ [
"\"Parker \\\"Parker, Peter Peter \"" ,
"[email protected] " ],
137
+ ],
138
+ [
139
+ [
"Schäfer, Peter " ,
"[email protected] " ],
140
+ [
"\"Schäfer, Peter \"" ,
"[email protected] " ]
141
+ ],
142
+ [
143
+ [
'"Schäfer, Peter" ' ,
"[email protected] " ],
144
+ [
'"\"Schäfer, Peter\"" ' ,
"[email protected] " ]
145
+ ],
146
+ [
147
+ [
'"Schä"fer, Pe"ter" ' ,
"[email protected] " ],
148
+ [
'"\"Schä\"fer, Pe\"ter\"" ' ,
"[email protected] " ]
149
+ ]
150
+
151
+ ];
152
+
153
+ foreach ($ tests as $ test ) {
154
+ [$ input , $ output ] = $ test ;
155
+
156
+ $ mailAddress = new MailAddress ($ input [1 ], $ input [0 ]);
157
+
158
+ $ jsonString = json_encode ($ mailAddress ->toJson ());
159
+ $ fromStringMailAddress = MailAddress::fromString ($ jsonString );
160
+
161
+ $ this ->assertSame ($ output [1 ], $ fromStringMailAddress ->getAddress ());
162
+ $ this ->assertSame ($ output [0 ], $ fromStringMailAddress ->getName ());
163
+ }
164
+
165
+
166
+
114
167
$ name = "Peter Parker " ;
115
168
116
169
$ mailAddress = new MailAddress ($ address , $ name );
@@ -166,39 +219,4 @@ public function testCopy()
166
219
}
167
220
168
221
169
- /**
170
- * @see conjoon/php-lib-conjoon#12
171
- */
172
- public function testForAddressThatNeedToBeSanitized ()
173
- {
174
- $ tests = [
175
- [
176
- [
"Parker, Peter " ,
"[email protected] " ],
177
- [
"\"Parker, Peter \"" ,
"[email protected] " ],
178
- ],
179
- [
180
- [
"Parker Peter " ,
"[email protected] " ],
181
- [
"Parker Peter " ,
"[email protected] " ],
182
- ],
183
- [
184
- [
"Parker \" Peter " ,
"[email protected] " ],
185
- [
"\"Parker \\\" Peter \"" ,
"[email protected] " ],
186
- ],
187
- [
188
- [
"Parker ' Peter " ,
"[email protected] " ],
189
- [
"\"Parker \' Peter \"" ,
"[email protected] " ],
190
- ],
191
- [
192
- [
"Parker \"Parker, Peter Peter " ,
"[email protected] " ],
193
- [
"\"Parker \\\"Parker, Peter Peter \"" ,
"[email protected] " ],
194
- ]
195
- ];
196
-
197
- foreach ($ tests as $ test ) {
198
- [$ input , $ output ] = $ test ;
199
- $ mailAddress = new MailAddress ($ input [1 ], $ input [0 ]);
200
- $ this ->assertSame ($ output [1 ], $ mailAddress ->getAddress ());
201
- $ this ->assertSame ($ output [0 ], $ mailAddress ->getName ());
202
- }
203
- }
204
222
}
0 commit comments