def test_event_occurrence_form_invalid_post_data_no_game(self): form = EventOccurrenceForm({ 'status': 'No Game', 'cancellation_reason': '' }) self.assertFalse(form.is_valid()) self.assertEqual( form.errors['cancellation_reason'], ['This field is required.'])
def test_event_occurrence_form_valid_post_data_game(self): test_file = SimpleUploadedFile('scoresheet.txt', b'Team Spaghetti 100 points') data = { 'status': 'Game', 'time_started': '08:00 PM', 'time_ended': '10:00 PM', 'number_of_teams': 5, } files = { 'scoresheet': test_file, } form = EventOccurrenceForm(data, files) self.assertTrue(form.is_valid())
def test_event_occurrence_form_game_with_valid_late_start_into_next_day_does_not_return_error(self): test_file = SimpleUploadedFile('scoresheet.txt', b'Team Spaghetti 100 points') data = { 'status': 'Game', 'time_started': '10:00 PM', 'time_ended': '01:00 AM', 'number_of_teams': 5, } files = { 'scoresheet': test_file, } form = EventOccurrenceForm(data, files) self.assertTrue(form.is_valid())
def test_event_occurrence_form_game_clean_clears_up_cancellation_reason(self): test_file = SimpleUploadedFile('scoresheet.txt', b'Team Spaghetti 100 points') data = { 'status': 'Game', 'cancellation_reason': 'Holiday', 'time_started': '08:00 PM', 'time_ended': '10:00 PM', 'number_of_teams': 5, } files = { 'scoresheet': test_file, } form = EventOccurrenceForm(data, files) self.assertTrue(form.is_valid()) self.assertEqual(form.instance.cancellation_reason, '')
def test_event_occurrence_form_game_with_late_start_into_next_day_longer_than_three_hours_returns_error(self): test_file = SimpleUploadedFile('scoresheet.txt', b'Team Spaghetti 100 points') data = { 'status': 'Game', 'time_started': '10:00 PM', 'time_ended': '01:01 AM', 'number_of_teams': 5, } files = { 'scoresheet': test_file, } form = EventOccurrenceForm(data, files) self.assertFalse(form.is_valid()) self.assertEqual( form.errors['__all__'], ['The duration of the game should be around 2 hours. ' 'Double check your inputted time.'])
def test_event_occurrence_form_invalid_post_data_game(self): data = { 'status': 'Game', 'time_started': '', 'time_ended': '', 'number_of_teams': '', } files = { 'scoresheet': '', } form = EventOccurrenceForm(data, files) self.assertFalse(form.is_valid()) self.assertEqual( form.errors['time_started'], ['This field is required.']) self.assertEqual( form.errors['time_ended'], ['This field is required.']) self.assertEqual( form.errors['number_of_teams'], ['This field is required.']) self.assertEqual( form.errors['scoresheet'], ['This field is required.'])
def test_event_occurrence_form_valid_post_data_no_game(self): form = EventOccurrenceForm({ 'status': 'No Game', 'cancellation_reason': 'Alternate Event' }) self.assertTrue(form.is_valid())