19
19
20
20
from anymail .exceptions import AnymailInvalidAddress
21
21
from anymail .utils import (
22
- parse_address_list , ParsedEmail ,
22
+ parse_address_list , EmailAddress ,
23
23
is_lazy , force_non_lazy , force_non_lazy_dict , force_non_lazy_list ,
24
24
update_deep ,
25
25
get_request_uri , get_request_basic_auth , parse_rfc2822date )
@@ -32,21 +32,21 @@ def test_simple_email(self):
32
32
parsed_list = parse_address_list ([
"[email protected] " ])
33
33
self .assertEqual (len (parsed_list ), 1 )
34
34
parsed = parsed_list [0 ]
35
- self .assertIsInstance (parsed , ParsedEmail )
36
- self .
assertEqual (
parsed .
email ,
"[email protected] " )
37
- self .assertEqual (parsed .name , "" )
35
+ self .assertIsInstance (parsed , EmailAddress )
36
+ self .
assertEqual (
parsed .
addr_spec ,
"[email protected] " )
37
+ self .assertEqual (parsed .display_name , "" )
38
38
self .
assertEqual (
parsed .
address ,
"[email protected] " )
39
- self .assertEqual (parsed .localpart , "test" )
39
+ self .assertEqual (parsed .username , "test" )
40
40
self .assertEqual (parsed .domain , "example.com" )
41
41
42
42
def test_display_name (self ):
43
43
parsed_list = parse_address_list ([
'"Display Name, Inc." <[email protected] >' ])
44
44
self .assertEqual (len (parsed_list ), 1 )
45
45
parsed = parsed_list [0 ]
46
- self .
assertEqual (
parsed .
email ,
"[email protected] " )
47
- self .assertEqual (parsed .name , "Display Name, Inc." )
46
+ self .
assertEqual (
parsed .
addr_spec ,
"[email protected] " )
47
+ self .assertEqual (parsed .display_name , "Display Name, Inc." )
48
48
self .
assertEqual (
parsed .
address ,
'"Display Name, Inc." <[email protected] >' )
49
- self .assertEqual (parsed .localpart , "test" )
49
+ self .assertEqual (parsed .username , "test" )
50
50
self .assertEqual (parsed .domain , "example.com" )
51
51
52
52
def test_obsolete_display_name (self ):
@@ -55,16 +55,16 @@ def test_obsolete_display_name(self):
55
55
parsed_list = parse_address_list ([
'Display Name <[email protected] >' ])
56
56
self .assertEqual (len (parsed_list ), 1 )
57
57
parsed = parsed_list [0 ]
58
- self .
assertEqual (
parsed .
email ,
"[email protected] " )
59
- self .assertEqual (parsed .name , "Display Name" )
58
+ self .
assertEqual (
parsed .
addr_spec ,
"[email protected] " )
59
+ self .assertEqual (parsed .display_name , "Display Name" )
60
60
self .
assertEqual (
parsed .
address ,
'Display Name <[email protected] >' )
61
61
62
62
def test_unicode_display_name (self ):
63
63
parsed_list = parse_address_list ([
u'"Unicode \N{HEAVY BLACK HEART} " <[email protected] >' ])
64
64
self .assertEqual (len (parsed_list ), 1 )
65
65
parsed = parsed_list [0 ]
66
- self .
assertEqual (
parsed .
email ,
"[email protected] " )
67
- self .assertEqual (parsed .name , u"Unicode \N{HEAVY BLACK HEART} " )
66
+ self .
assertEqual (
parsed .
addr_spec ,
"[email protected] " )
67
+ self .assertEqual (parsed .display_name , u"Unicode \N{HEAVY BLACK HEART} " )
68
68
# formatted display-name automatically shifts to quoted-printable/base64 for non-ascii chars:
69
69
self .
assertEqual (
parsed .
address ,
'=?utf-8?b?VW5pY29kZSDinaQ=?= <[email protected] >' )
70
70
@@ -80,9 +80,9 @@ def test_idn(self):
80
80
parsed_list = parse_address_list ([u"idn@\N{ENVELOPE} .example.com" ])
81
81
self .assertEqual (len (parsed_list ), 1 )
82
82
parsed = parsed_list [0 ]
83
- self .assertEqual (parsed .email , u"idn@\N{ENVELOPE} .example.com" )
83
+ self .assertEqual (parsed .addr_spec , u"idn@\N{ENVELOPE} .example.com" )
84
84
self .
assertEqual (
parsed .
address ,
"[email protected] " )
# punycode-encoded domain
85
- self .assertEqual (parsed .localpart , "idn" )
85
+ self .assertEqual (parsed .username , "idn" )
86
86
self .assertEqual (parsed .domain , u"\N{ENVELOPE} .example.com" )
87
87
88
88
def test_none_address (self ):
@@ -113,17 +113,17 @@ def test_invalid_address(self):
113
113
def test_email_list (self ):
114
114
parsed_list = parse_address_list ([
"[email protected] " ,
"[email protected] " ])
115
115
self .assertEqual (len (parsed_list ), 2 )
116
- self .
assertEqual (
parsed_list [
0 ].
email ,
"[email protected] " )
117
- self .
assertEqual (
parsed_list [
1 ].
email ,
"[email protected] " )
116
+ self .
assertEqual (
parsed_list [
0 ].
addr_spec ,
"[email protected] " )
117
+ self .
assertEqual (
parsed_list [
1 ].
addr_spec ,
"[email protected] " )
118
118
119
119
def test_multiple_emails (self ):
120
120
# Django's EmailMessage allows multiple, comma-separated emails
121
121
# in a single recipient string. (It passes them along to the backend intact.)
122
122
# (Depending on this behavior is not recommended.)
123
123
parsed_list = parse_address_list ([
"[email protected] , [email protected] " ])
124
124
self .assertEqual (len (parsed_list ), 2 )
125
- self .
assertEqual (
parsed_list [
0 ].
email ,
"[email protected] " )
126
- self .
assertEqual (
parsed_list [
1 ].
email ,
"[email protected] " )
125
+ self .
assertEqual (
parsed_list [
0 ].
addr_spec ,
"[email protected] " )
126
+ self .
assertEqual (
parsed_list [
1 ].
addr_spec ,
"[email protected] " )
127
127
128
128
def test_invalid_in_list (self ):
129
129
# Make sure it's not just concatenating list items...
@@ -136,18 +136,18 @@ def test_single_string(self):
136
136
# bare strings are used by the from_email parsing in BasePayload
137
137
parsed_list = parse_address_list (
"[email protected] " )
138
138
self .assertEqual (len (parsed_list ), 1 )
139
- self .
assertEqual (
parsed_list [
0 ].
email ,
"[email protected] " )
139
+ self .
assertEqual (
parsed_list [
0 ].
addr_spec ,
"[email protected] " )
140
140
141
141
def test_lazy_strings (self ):
142
142
parsed_list = parse_address_list ([
ugettext_lazy (
'"Example, Inc." <[email protected] >' )])
143
143
self .assertEqual (len (parsed_list ), 1 )
144
- self .assertEqual (parsed_list [0 ].name , "Example, Inc." )
145
- self .
assertEqual (
parsed_list [
0 ].
email ,
"[email protected] " )
144
+ self .assertEqual (parsed_list [0 ].display_name , "Example, Inc." )
145
+ self .
assertEqual (
parsed_list [
0 ].
addr_spec ,
"[email protected] " )
146
146
147
147
parsed_list = parse_address_list (
ugettext_lazy (
"[email protected] " ))
148
148
self .assertEqual (len (parsed_list ), 1 )
149
- self .assertEqual (parsed_list [0 ].name , "" )
150
- self .
assertEqual (
parsed_list [
0 ].
email ,
"[email protected] " )
149
+ self .assertEqual (parsed_list [0 ].display_name , "" )
150
+ self .
assertEqual (
parsed_list [
0 ].
addr_spec ,
"[email protected] " )
151
151
152
152
153
153
class LazyCoercionTests (SimpleTestCase ):
0 commit comments