def test_compute_grade_for_fa(self):
"""
Tests for _compute_grade_for_fa function.
This tests that even with certificate the grade is from current_grades.
"""
run1_data = self.user_edx_data.get_run_data(self.run_fa.edx_course_key)
run2_data = self.user_edx_data.get_run_data(self.run_fa_with_cert.edx_course_key)
grade1_from_cur_grade = api._compute_grade_for_fa(run1_data)
grade2_from_cert = api._compute_grade_for_fa(run2_data)
assert isinstance(grade1_from_cur_grade, api.UserFinalGrade)
assert isinstance(grade2_from_cert, api.UserFinalGrade)
assert grade1_from_cur_grade.passed == self.current_grades.get(
self.run_fa.edx_course_key).data.get('passed')
assert grade1_from_cur_grade.grade == self.current_grades.get(
self.run_fa.edx_course_key).data.get('percent')
assert grade1_from_cur_grade.payed_on_edx is False
assert grade2_from_cert.passed is True
assert grade2_from_cert.grade == self.current_grades.get(
self.run_fa_with_cert.edx_course_key).data.get('percent')
# this is True as long as the certificate is verified
assert grade2_from_cert.payed_on_edx is True
评论列表
文章目录