update sba testing (and fix others)
This commit is contained in:
+46
-14
@@ -1889,30 +1889,62 @@ class ExamViews(View, LoginRequiredMixin):
|
||||
print("ans", ans)
|
||||
print("ans score", answer_score)
|
||||
|
||||
correct_answer = q.get_primary_answer()
|
||||
match self.app_name:
|
||||
case "sbas":
|
||||
correct_answer = q.get_correct_answer()
|
||||
|
||||
if not exam.publish_results and not view_all_results:
|
||||
correct_answer = "*****"
|
||||
answer_score = 0
|
||||
answers.append(ans)
|
||||
answers_marks.append(answer_score)
|
||||
answers_and_marks.append((ans, answer_score, correct_answer))
|
||||
if not exam.publish_results and not view_all_results:
|
||||
correct_answer = "*****"
|
||||
answer_score = 0
|
||||
answers.append(ans)
|
||||
answers_marks.append(answer_score)
|
||||
|
||||
merged_ans = (ans, answer_score, correct_answer)
|
||||
chosen_answer = q.get_answer_by_choice(ans)
|
||||
answers_and_marks.append((q, *merged_ans, chosen_answer))
|
||||
case "physics":
|
||||
correct_answer = q.get_answers()
|
||||
|
||||
if not exam.publish_results and not view_all_results:
|
||||
correct_answer = ("*****", "*****", "*****", "*****", "*****")
|
||||
answer_score = (0, 0, 0, 0, 0)
|
||||
answers.append(ans)
|
||||
answers_marks.append(answer_score)
|
||||
|
||||
print(q.get_questions(), ans, answer_score, correct_answer)
|
||||
merged_ans = zip(q.get_questions(), ans, answer_score, correct_answer)
|
||||
answers_and_marks.append((q, merged_ans))
|
||||
case _:
|
||||
correct_answer = q.get_primary_answer()
|
||||
|
||||
if not exam.publish_results and not view_all_results:
|
||||
correct_answer = "*****"
|
||||
answer_score = 0
|
||||
answers.append(ans)
|
||||
answers_marks.append(answer_score)
|
||||
answers_and_marks.append((ans, answer_score, correct_answer))
|
||||
|
||||
print(answers_marks)
|
||||
|
||||
if "unmarked" in answers_marks:
|
||||
answered = [i for i in answers_marks if type(i) == int]
|
||||
total_score = sum(answered)
|
||||
unmarked_number = len(answers_marks) - len(answered)
|
||||
total_score = "{} ({} unmarked)".format(total_score, unmarked_number)
|
||||
else:
|
||||
total_score = sum(answers_marks)
|
||||
match self.app_name:
|
||||
case "physics":
|
||||
total_score = sum(sum(i) for i in answers_marks)
|
||||
case _:
|
||||
if "unmarked" in answers_marks:
|
||||
answered = [i for i in answers_marks if type(i) == int]
|
||||
total_score = sum(answered)
|
||||
unmarked_number = len(answers_marks) - len(answered)
|
||||
total_score = "{} ({} unmarked)".format(total_score, unmarked_number)
|
||||
else:
|
||||
total_score = sum(answers_marks)
|
||||
|
||||
match self.app_name:
|
||||
case "rapids" | "anatomy":
|
||||
max_score = len(questions) * 2
|
||||
case "longs":
|
||||
max_score = len(questions) * 8
|
||||
case "physics":
|
||||
max_score = len(questions) * 5
|
||||
case _:
|
||||
max_score = len(questions)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user