Exemple #1
0
    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'])
Exemple #2
0
    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'])