Built out test_edit_nomcom_view() to also test adding and removing reminder dates.

- Legacy-Id: 15524
This commit is contained in:
Henrik Levkowetz 2018-10-06 13:01:08 +00:00
parent 2c2effde4f
commit fc027ae161
2 changed files with 23 additions and 2 deletions

View file

@ -664,7 +664,6 @@ class ReminderDatesForm(forms.ModelForm):
def clean(self):
cleaned_data = super(ReminderDatesForm, self).clean()
date = cleaned_data.get('date')
delete = cleaned_data.get('DELETE')
if date is None:
cleaned_data['date'] = ''
cleaned_data['DELETE'] = True

View file

@ -25,7 +25,7 @@ from ietf.nomcom.test_data import nomcom_test_data, generate_cert, check_comment
MEMBER_USER, SECRETARIAT_USER, EMAIL_DOMAIN, NOMCOM_YEAR
from ietf.nomcom.models import NomineePosition, Position, Nominee, \
NomineePositionStateName, Feedback, FeedbackTypeName, \
Nomination, FeedbackLastSeen, TopicFeedbackLastSeen
Nomination, FeedbackLastSeen, TopicFeedbackLastSeen, ReminderDates
from ietf.nomcom.management.commands.send_reminders import Command, is_time_to_send
from ietf.nomcom.factories import NomComFactory, FeedbackFactory, TopicFactory, \
nomcom_kwargs_for_year, provide_private_key_to_test_client, \
@ -404,6 +404,7 @@ class NomcomViewsTest(TestCase):
def test_edit_nomcom_view(self):
r = self.access_chair_url(self.edit_nomcom_url)
q = PyQuery(r.content)
reminder_date = '%s-09-30' % self.year
f = open(self.cert_file.name)
response = self.client.post(self.edit_nomcom_url, {
@ -411,10 +412,12 @@ class NomcomViewsTest(TestCase):
'reminderdates_set-TOTAL_FORMS': q('input[name="reminderdates_set-TOTAL_FORMS"]').val(),
'reminderdates_set-INITIAL_FORMS': q('input[name="reminderdates_set-INITIAL_FORMS"]').val(),
'reminderdates_set-MAX_NUM_FORMS': q('input[name="reminderdates_set-MAX_NUM_FORMS"]').val(),
'reminderdates_set-0-date': reminder_date,
})
f.close()
self.assertEqual(response.status_code, 200)
nominee = Nominee.objects.get(email__person__user__username=COMMUNITY_USER)
position = Position.objects.get(name='OAM')
@ -431,6 +434,25 @@ class NomcomViewsTest(TestCase):
self.assertEqual(check_comments(feedback.comments, comments, self.privatekey_file), True)
# Check that the set reminder date is present
reminder_dates = dict([ (d.id,str(d.date)) for d in nomcom.reminderdates_set.all() ])
self.assertIn(reminder_date, reminder_dates.values())
# Remove reminder date
q = PyQuery(response.content) # from previous post
r = self.client.post(self.edit_nomcom_url, {
'reminderdates_set-TOTAL_FORMS': q('input[name="reminderdates_set-TOTAL_FORMS"]').val(),
'reminderdates_set-INITIAL_FORMS': q('input[name="reminderdates_set-INITIAL_FORMS"]').val(),
'reminderdates_set-MAX_NUM_FORMS': q('input[name="reminderdates_set-MAX_NUM_FORMS"]').val(),
'reminderdates_set-0-id': str(reminder_dates.keys()[0]),
'reminderdates_set-0-date': '',
})
self.assertEqual(r.status_code, 200)
# Check that reminder date has been removed
reminder_dates = dict([ (d.id,str(d.date)) for d in ReminderDates.objects.filter(nomcom=nomcom) ])
self.assertNotIn(reminder_date, reminder_dates.values())
self.client.logout()
def test_list_positions(self):