|
13 | 13 | from ietf.utils.test_data import make_test_data |
14 | 14 | from ietf.utils.mail import outbox |
15 | 15 | from ietf.utils.test_utils import TestCase |
16 | | -from ietf.submit.utils import expirable_submissions, expire_submission |
| 16 | +from ietf.submit.utils import expirable_submissions, expire_submission, ensure_person_email_info_exists |
17 | 17 | from ietf.person.models import Person |
18 | 18 | from ietf.group.models import Group |
19 | | -from ietf.doc.models import Document, DocEvent, State, BallotDocEvent, BallotPositionDocEvent |
| 19 | +from ietf.doc.models import Document, DocEvent, State, BallotDocEvent, BallotPositionDocEvent, DocumentAuthor |
20 | 20 | from ietf.submit.models import Submission, Preapproval |
21 | 21 |
|
22 | 22 | class SubmitTests(TestCase): |
@@ -179,6 +179,10 @@ def test_submit_existing(self): |
179 | 179 | draft = make_test_data() |
180 | 180 | prev_author = draft.documentauthor_set.all()[0] |
181 | 181 |
|
| 182 | + # Make it such that one of the previous authors has an invalid email address |
| 183 | + bogus_email = ensure_person_email_info_exists('Bogus Person',None) |
| 184 | + DocumentAuthor.objects.create(document=draft,author=bogus_email,order=draft.documentauthor_set.latest('order').order+1) |
| 185 | + |
182 | 186 | # pretend IANA reviewed it |
183 | 187 | draft.set_state(State.objects.get(used=True, type="draft-iana-review", slug="not-ok")) |
184 | 188 |
|
@@ -225,6 +229,8 @@ def test_submit_existing(self): |
225 | 229 | # submitter and new author can't confirm |
226 | 230 | self.assertTrue("author@example.com" not in confirm_email["To"]) |
227 | 231 | self.assertTrue("submitter@example.com" not in confirm_email["To"]) |
| 232 | + # Verify that mail wasn't sent to know invalid addresses |
| 233 | + self.assertTrue("unknown-email-" not in confirm_email["To"]) |
228 | 234 |
|
229 | 235 | confirm_url = self.extract_confirm_url(confirm_email) |
230 | 236 |
|
|
0 commit comments