def test_check_count_gradable_and_notgradable_solutions(self): teacher = BaseUser.objects.promote_to_teacher(self.baseuser) teacher.teached_courses = [self.course] solution1 = SolutionFactory(task=self.task, student=self.student) solution1.status = 3 solution1.save() solution2 = SolutionFactory(task=self.task, student=self.student) solution2.status = 2 solution2.save() url_task = TaskFactory(course=self.course, gradable=False) SolutionFactory(task=url_task, student=self.student) with self.login(username=teacher.email, password=BaseUserFactory.password): response = self.get('education:course-detail', course=self.course.id) self.assertEqual(response.status_code, 200) self.assertEqual(1, response.context['not_gradable_tasks']) self.assertEqual(1, response.context['gradable_tasks']) self.assertEqual(3, response.context['count_solutions']) self.assertEqual(1, response.context['not_gradable_tasks']) self.assertEqual(1, response.context['passed_solutions']) self.assertEqual(1, response.context['url_solutions']) self.assertEqual(1, response.context['failed_solutions'])
def test_teacher_can_see_student_detail_information(self): teacher = BaseUser.objects.promote_to_teacher(self.baseuser) teacher.teached_courses = [self.course] solution1 = SolutionFactory(task=self.task, student=self.student) solution1.status = 3 solution1.save() solution2 = SolutionFactory(task=self.task, student=self.student) solution2.status = 2 solution2.save() solution3 = SolutionFactory(task=self.task, student=self.student) solution3.status = 2 solution3.save() url_task = TaskFactory(course=self.course, gradable=False) SolutionFactory(task=url_task, student=self.student) LectureFactory(course=self.course, date=datetime.now().date() - timedelta(days=9)) LectureFactory(course=self.course, date=datetime.now().date() - timedelta(days=7)) LectureFactory(course=self.course, date=datetime.now().date() - timedelta(days=5)) LectureFactory(course=self.course, date=datetime.now().date() - timedelta(days=3)) check_in1 = CheckInFactory(mac=self.student.mac, user=self.student) check_in1.date = datetime.now().date() - timedelta(days=9) check_in1.save() check_in2 = CheckInFactory(mac=self.student.mac, user=self.student) check_in2.date = datetime.now().date() - timedelta(days=7) check_in2.save() with self.login(email=teacher.email, password=BaseUserFactory.password): response = self.get('education:student-detail', course=self.course.id, ca=self.ca.id) self.assertEqual(response.status_code, 200) self.assertEqual(self.ca, response.context['object']) self.assertEqual(2, response.context['passed_solutions']) self.assertEqual(1, response.context['failed_solutions']) self.assertEqual(1, response.context['url_solutions'])