@@ -303,30 +303,59 @@ defmodule Mail.Parsers.RFC2822Test do
303
303
assert to_datetime ( "invalid date string" ) == { :error , "invalid date string" }
304
304
end
305
305
306
- test "parse_recipient_value retrieves a list of name and addresses" do
307
- recipient =
308
-
309
-
310
- retrieved_recipients = [
311
- { "The Dude" , "[email protected] " } ,
312
-
313
-
314
-
315
- ]
316
-
317
- assert parse_recipient ( recipient ) == retrieved_recipients
318
- end
306
+ describe "parse_recipient_value/1" do
307
+ test "parse_recipient_value retrieves a list of name and addresses" do
308
+ recipient =
309
+
310
+
311
+ retrieved_recipients = [
312
+ { "The Dude" , "[email protected] " } ,
313
+
314
+
315
+
316
+ ]
317
+
318
+ assert parse_recipient ( recipient ) == retrieved_recipients
319
+ end
320
+
321
+ test "parse_recipient_value retrieves an empty list when recipient is empty" do
322
+ assert parse_recipient ( "" ) == [ ]
323
+ end
324
+
325
+ test "parse_recipient_value retrieves an empty list when no \" address\" found" do
326
+ assert parse_recipient ( "NoEmail" ) == [ ]
327
+ end
328
+
329
+ test "parse_recipient_value retrieves a list when only one \" address\" found" do
330
+ assert parse_recipient ( "[email protected] " ) == [ "[email protected] " ]
331
+ assert parse_recipient ( "<[email protected] >" ) == [ "[email protected] " ]
332
+ end
333
+
334
+ test "parse_recipient_value quoted name" do
335
+ assert parse_recipient ( ~S| "dude" <[email protected] >| ) == [ { "dude" , "[email protected] " } ]
336
+
337
+ assert parse_recipient ( ~S| "First, Second" <[email protected] >| ) == [
338
+ { "First, Second" , "[email protected] " }
339
+ ]
340
+ end
319
341
320
- test "parse_recipient_value retrieves an empty list when recipient is empty" do
321
- assert parse_recipient ( "" ) == [ ]
322
- end
342
+ test "parse_recipient_value non-quoted name" do
343
+ assert parse_recipient ( ~S| The Dude <[email protected] >| ) == [
344
+
345
+ ]
346
+ end
323
347
324
- test "parse_recipient_value retrieves an empty list when no \" address\" found" do
325
- assert parse_recipient ( "NoEmail" ) == [ ]
326
- end
348
+ test "parse_recipient_value extra quoted name" do
349
+ assert parse_recipient ( ~S| "\"dude\"" <[email protected] >| ) == [
350
+
351
+ ]
352
+ end
327
353
328
- test "parse_recipient_value retrieves a list when only one \" address\" found" do
329
- assert parse_recipient ( "[email protected] " ) == [ "[email protected] " ]
354
+ test "parse_recipient_value extra test" do
355
+ assert parse_recipient ( ~S| "\"[email protected] \" " <[email protected] >| ) == [
356
+
357
+ ]
358
+ end
330
359
end
331
360
332
361
test "parses a nested multipart message with encoded part" do
0 commit comments