def test_unicode(self): et1 = factories.ExamTicketFactory(exam=self.exam, participation=self.participation1, code="abcd") et2 = factories.ExamTicketFactory(exam=self.exam, participation=self.participation2, code="cdef") self.assertNotEqual(str(et1), str(et2))
def setUp(self): super(ListAvailableExamsTest, self).setUp() self.ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid) self.instructor_ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.instructor_participation, state=constants.exam_ticket_states.valid)
def setUp(self): super(CheckInForExamTest, self).setUp() self.ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid) self.instructor_ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.instructor_participation, state=constants.exam_ticket_states.valid) fake_check_exam_ticket = mock.patch("course.exam.check_exam_ticket") self.mock_check_exam_ticket = fake_check_exam_ticket.start() self.addCleanup(fake_check_exam_ticket.stop)
def setUp(self): super(GetLoginExamTicketTest, self).setUp() self.ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid) self.request = mock.MagicMock()
def test_revoke_exam_tickets(self): ticket1 = factories.ExamTicketFactory( exam=self.exam, participation=self.course1_student_participation) ticket2 = factories.ExamTicketFactory( exam=self.exam, participation=self.course1_ta_participation) from django.contrib.admin.helpers import ACTION_CHECKBOX_NAME action_data = { ACTION_CHECKBOX_NAME: [ticket1.pk], 'action': "revoke_exam_tickets", 'index': 0, } with self.temporarily_switch_to_user(self.instructor1): resp = self.c.post( self.get_admin_course_change_list_view_url( models.ExamTicket.__name__), action_data) self.assertEqual(resp.status_code, 302) ticket1.refresh_from_db() self.assertEqual(ticket1.state, constants.exam_ticket_states.revoked) ticket2.refresh_from_db() self.assertEqual(ticket2.state, constants.exam_ticket_states.valid)
def setUp(self): super(CheckExamTicketTest, self).setUp() self.exam.refresh_from_db() self.now = now() self.facilities = frozenset([]) self.exam.no_exams_after = self.now + timedelta(days=1) self.exam.no_exams_before = self.now - timedelta(days=2) self.exam.save() self.ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid, usage_time=self.now + timedelta(minutes=100), valid_start_time=self.now - timedelta(minutes=20), valid_end_time=self.now + timedelta(minutes=100), )
def test_revoke_revoke_prior_ticket(self): prior_ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid) resp = self.post_batch_issue_exam_ticket_view(data=self.get_post_data( revoke_prior=True)) self.assertFormErrorLoose(resp, None) self.assertEqual(resp.status_code, 200) self.assertEqual(ExamTicket.objects.count(), 4) prior_ticket.refresh_from_db() self.assertEqual(prior_ticket.state, constants.exam_ticket_states.revoked) self.assertAddMessageCallCount(1) self.assertAddMessageCalledWith("3 tickets issued.")
def test_revoke_revoke_prior_ticket(self): self.mock_get_now_or_fake_time.return_value = self.default_faked_now prior_ticket = factories.ExamTicketFactory( exam=self.exam, participation=self.student_participation, state=constants.exam_ticket_states.valid) resp = self.post_issue_exam_ticket_view(data=self.get_post_data( revoke_prior=True)) self.assertFormErrorLoose(resp, None) self.assertEqual(resp.status_code, 200) self.assertEqual(ExamTicket.objects.count(), 2) prior_ticket.refresh_from_db() self.assertEqual(prior_ticket.state, constants.exam_ticket_states.revoked) self.assertAddMessageCallCount(1) self.assertAddMessageCalledWith("Ticket issued for", reset=False) self.assertAddMessageCalledWith("The ticket code is")
def test_navigate(self): factories.ExamTicketFactory( exam=self.exam, participation=self.course1_student_participation) self.navigate_admin_view_by_model(models.ExamTicket)