SES: Fix sending email when use verify_email_address (#3242)
This commit is contained in:
parent
8a551a9754
commit
47a227921d
@ -103,6 +103,8 @@ class SESBackend(BaseBackend):
|
|||||||
_, address = parseaddr(source)
|
_, address = parseaddr(source)
|
||||||
if address in self.addresses:
|
if address in self.addresses:
|
||||||
return True
|
return True
|
||||||
|
if address in self.email_addresses:
|
||||||
|
return True
|
||||||
user, host = address.split("@", 1)
|
user, host = address.split("@", 1)
|
||||||
return host in self.domains
|
return host in self.domains
|
||||||
|
|
||||||
|
@ -84,6 +84,35 @@ def test_send_email():
|
|||||||
sent_count.should.equal(3)
|
sent_count.should.equal(3)
|
||||||
|
|
||||||
|
|
||||||
|
@mock_ses
|
||||||
|
def test_send_email_when_verify_source():
|
||||||
|
conn = boto3.client("ses", region_name="us-east-1")
|
||||||
|
|
||||||
|
kwargs = dict(
|
||||||
|
Destination={"ToAddresses": ["test_to@example.com"],},
|
||||||
|
Message={
|
||||||
|
"Subject": {"Data": "test subject"},
|
||||||
|
"Body": {"Text": {"Data": "test body"}},
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
conn.send_email.when.called_with(
|
||||||
|
Source="verify_email_address@example.com", **kwargs
|
||||||
|
).should.throw(ClientError)
|
||||||
|
conn.verify_email_address(EmailAddress="verify_email_address@example.com")
|
||||||
|
conn.send_email(Source="verify_email_address@example.com", **kwargs)
|
||||||
|
|
||||||
|
conn.send_email.when.called_with(
|
||||||
|
Source="verify_email_identity@example.com", **kwargs
|
||||||
|
).should.throw(ClientError)
|
||||||
|
conn.verify_email_identity(EmailAddress="verify_email_identity@example.com")
|
||||||
|
conn.send_email(Source="verify_email_identity@example.com", **kwargs)
|
||||||
|
|
||||||
|
send_quota = conn.get_send_quota()
|
||||||
|
sent_count = int(send_quota["SentLast24Hours"])
|
||||||
|
sent_count.should.equal(2)
|
||||||
|
|
||||||
|
|
||||||
@mock_ses
|
@mock_ses
|
||||||
def test_send_templated_email():
|
def test_send_templated_email():
|
||||||
conn = boto3.client("ses", region_name="us-east-1")
|
conn = boto3.client("ses", region_name="us-east-1")
|
||||||
|
Loading…
Reference in New Issue
Block a user