コード例 #1
0
    def test_show_calibration_essay_after_failing_grader(self):
        # test there are no failed calibration submissions
        failed_calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.failure,
        )
        self.assertFalse(failed_calibration_submissions.exists())

        # Failing grader manually.
        update_grader_to_manually_fail(self.grader_id, dry_run=False)

        content = self.client.get(
            SHOW_CALIBRATION,
            data={'problem_id': LOCATION, "student_id": STUDENT_ID},
        )

        body = json.loads(content.content)

        # Should have succeeded.
        self.assertEqual(body["success"], True)

        calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.success,
        )

        submission_ids = [submission.id for submission in calibration_submissions]

        # Submission id should not be in calibration submission ids.
        self.assertNotIn(self.submission_id, submission_ids)
コード例 #2
0
    def test_dry_run(self):
        update_grader_to_manually_fail(self.grader_id)
        # test there are no failed calibration submissions
        failed_calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.failure,
        )

        self.assertFalse(failed_calibration_submissions.exists())
コード例 #3
0
 def test_bad_grader_id(self):
     bad_grader_id = -1
     update_grader_to_manually_fail(bad_grader_id, dry_run=False)
     failed_calibration_submissions = Submission.objects.filter(
         location=LOCATION,
         grader__grader_type="IN",
         grader__status_code=GraderStatus.failure,
     )
     # check that there are no failed calibration essays
     self.assertFalse(failed_calibration_submissions.exists())
コード例 #4
0
    def test_dry_run(self):
        update_grader_to_manually_fail(self.grader_id)
        # test there are no failed calibration submissions
        failed_calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.failure,
        )

        self.assertFalse(failed_calibration_submissions.exists())
コード例 #5
0
 def test_bad_grader_id(self):
     bad_grader_id = -1
     update_grader_to_manually_fail(bad_grader_id, dry_run=False)
     failed_calibration_submissions = Submission.objects.filter(
         location=LOCATION,
         grader__grader_type="IN",
         grader__status_code=GraderStatus.failure,
     )
     # check that there are no failed calibration essays
     self.assertFalse(failed_calibration_submissions.exists())
コード例 #6
0
    def test_show_calibration_essay_after_failing_grader(self):
        # test there are no failed calibration submissions
        failed_calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.failure,
        )
        self.assertFalse(failed_calibration_submissions.exists())

        # Failing grader manually.
        update_grader_to_manually_fail(self.grader_id, dry_run=False)

        content = self.client.get(
            SHOW_CALIBRATION,
            data={
                'problem_id': LOCATION,
                "student_id": STUDENT_ID
            },
        )

        body = json.loads(content.content)

        # Should have succeeded.
        self.assertEqual(body["success"], True)

        calibration_submissions = Submission.objects.filter(
            location=LOCATION,
            grader__grader_type="IN",
            grader__status_code=GraderStatus.success,
        )

        submission_ids = [
            submission.id for submission in calibration_submissions
        ]

        # Submission id should not be in calibration submission ids.
        self.assertNotIn(self.submission_id, submission_ids)