Skip to content

Commit 47082fe

Browse files
committed
Allow submit and expire_drafts to succeed when there is no "next" IETF meeting in the database. Fixes ietf-tools#3370. Commit ready for merge.
- Legacy-Id: 19269
1 parent c93be0b commit 47082fe

4 files changed

Lines changed: 12 additions & 0 deletions

File tree

ietf/doc/expire.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@ def in_draft_expire_freeze(when=None):
8080

8181
meeting = Meeting.objects.filter(type='ietf', date__gte=when-datetime.timedelta(days=7)).order_by('date').first()
8282

83+
if not meeting:
84+
return False
85+
8386
d = meeting.get_second_cut_off()
8487
# for some reason, the old Perl code started at 9 am
8588
second_cut_off = datetime.datetime.combine(d, datetime.time(9, 0))

ietf/doc/tests_draft.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -645,6 +645,9 @@ class ExpireIDsTests(DraftFileMixin, TestCase):
645645
def test_in_draft_expire_freeze(self):
646646
from ietf.doc.expire import in_draft_expire_freeze
647647

648+
# If there is no "next" meeting, we musn't be in a freeze
649+
self.assertTrue(not in_draft_expire_freeze())
650+
648651
meeting = Meeting.objects.create(number="123",
649652
type=MeetingTypeName.objects.get(slug="ietf"),
650653
date=datetime.date.today())

ietf/submit/forms.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ def __init__(self, request, *args, **kwargs):
7878
def set_cutoff_warnings(self):
7979
now = datetime.datetime.now(pytz.utc)
8080
meeting = Meeting.get_current_meeting()
81+
if not meeting:
82+
return
8183
#
8284
cutoff_00 = meeting.get_00_cutoff()
8385
cutoff_01 = meeting.get_01_cutoff()

ietf/submit/tests.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -859,6 +859,10 @@ def test_submit_new_individual_txt(self):
859859
def test_submit_new_individual_xml(self):
860860
self.submit_new_individual(["xml"])
861861

862+
def test_submit_new_individual_xml_no_next_meeting(self):
863+
Meeting.objects.all().delete()
864+
self.submit_new_individual(["xml"])
865+
862866
def test_submit_new_individual_txt_xml(self):
863867
self.submit_new_individual(["txt", "xml"])
864868

0 commit comments

Comments
 (0)