Allow submit and expire_drafts to succeed when there is no "next" IETF meeting in the database. Fixes #3370. Commit ready for merge.

- Legacy-Id: 19269
This commit is contained in:
Robert Sparks 2021-08-01 17:50:35 +00:00
parent c93be0bd1d
commit 47082fe4c5
4 changed files with 12 additions and 0 deletions

View file

@ -80,6 +80,9 @@ def in_draft_expire_freeze(when=None):
meeting = Meeting.objects.filter(type='ietf', date__gte=when-datetime.timedelta(days=7)).order_by('date').first()
if not meeting:
return False
d = meeting.get_second_cut_off()
# for some reason, the old Perl code started at 9 am
second_cut_off = datetime.datetime.combine(d, datetime.time(9, 0))

View file

@ -645,6 +645,9 @@ class ExpireIDsTests(DraftFileMixin, TestCase):
def test_in_draft_expire_freeze(self):
from ietf.doc.expire import in_draft_expire_freeze
# If there is no "next" meeting, we musn't be in a freeze
self.assertTrue(not in_draft_expire_freeze())
meeting = Meeting.objects.create(number="123",
type=MeetingTypeName.objects.get(slug="ietf"),
date=datetime.date.today())

View file

@ -78,6 +78,8 @@ class SubmissionBaseUploadForm(forms.Form):
def set_cutoff_warnings(self):
now = datetime.datetime.now(pytz.utc)
meeting = Meeting.get_current_meeting()
if not meeting:
return
#
cutoff_00 = meeting.get_00_cutoff()
cutoff_01 = meeting.get_01_cutoff()

View file

@ -859,6 +859,10 @@ class SubmitTests(TestCase):
def test_submit_new_individual_xml(self):
self.submit_new_individual(["xml"])
def test_submit_new_individual_xml_no_next_meeting(self):
Meeting.objects.all().delete()
self.submit_new_individual(["xml"])
def test_submit_new_individual_txt_xml(self):
self.submit_new_individual(["txt", "xml"])