Skip to content

Commit 6ccd96f

Browse files
committed
Ignore suggestions that a draft replaces itself. Commit ready for merge.
- Legacy-Id: 9862
1 parent a4c6842 commit 6ccd96f

2 files changed

Lines changed: 25 additions & 0 deletions

File tree

ietf/submit/tests.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,27 @@ def test_submit_new_individual(self):
355355
self.assertEqual(new_revision.type, "new_revision")
356356
self.assertEqual(new_revision.by.name, "Submitter Name")
357357

358+
def test_submit_update_replacing_self(self):
359+
draft = make_test_data()
360+
name = draft.name
361+
rev = '%02d'%(int(draft.rev)+1)
362+
status_url = self.do_submission(name,rev)
363+
mailbox_before = len(outbox)
364+
replaced_alias = draft.docalias_set.first()
365+
r = self.supply_extra_metadata(name, status_url, "Submitter Name", "author@example.com", replaces=str(replaced_alias.pk))
366+
self.assertEqual(r.status_code, 302)
367+
status_url = r["Location"]
368+
r = self.client.get(status_url)
369+
self.assertEqual(len(outbox), mailbox_before + 1)
370+
confirm_url = self.extract_confirm_url(outbox[-1])
371+
mailbox_before = len(outbox)
372+
r = self.client.post(confirm_url)
373+
self.assertEqual(r.status_code, 302)
374+
draft = Document.objects.get(docalias__name=name)
375+
self.assertEqual(draft.rev, rev)
376+
self.assertEqual(draft.relateddocument_set.filter(relationship_id='replaces').count(),0)
377+
378+
358379
def test_submit_new_wg_with_dash(self):
359380
make_test_data()
360381

ietf/submit/utils.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,10 @@ def update_replaces_from_submission(request, submission, draft):
253253

254254
rdoc = r.document
255255

256+
if rdoc == draft:
257+
continue
258+
259+
# TODO - I think the .exists() is in the wrong place below....
256260
if (is_secretariat
257261
or (draft.group in is_chair_of and (rdoc.group.type_id == "individ" or rdoc.group in is_chair_of))
258262
or (submitter_email and rdoc.authors.filter(address__iexact=submitter_email)).exists()):

0 commit comments

Comments
 (0)