[FIX] survey: count answer as incorrect only if no correct answer in survey finish page graph

Before this commit, when computing the result graph data in the survey finished
page, a user answer for a question with no correct answer was counted twice,
once as correct, once as incorrect, as :
correct_answer == question_correct_answer == none

After this commit, we count an answer as correct only if question has a correct
answer.

Task ID: 2176630

closes odoo/odoo#54755

X-original-commit: 74a00111908556bce10ea3a5e748f5a5c81f6a40
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit is contained in:
David Beguin
2020-07-22 10:06:28 +00:00
parent e5ef19b730
commit 1c2bc40a95
+1 -1
View File
@@ -360,7 +360,7 @@ class SurveyUserInput(models.Model):
def _choice_question_answer_result(self, user_input_lines, question_correct_suggested_answers):
correct_user_input_lines = user_input_lines.filtered(lambda line: line.answer_is_correct and not line.skipped).mapped('suggested_answer_id')
incorrect_user_input_lines = user_input_lines.filtered(lambda line: not line.answer_is_correct and not line.skipped)
if correct_user_input_lines == question_correct_suggested_answers:
if question_correct_suggested_answers and correct_user_input_lines == question_correct_suggested_answers:
return 'correct'
elif correct_user_input_lines and correct_user_input_lines < question_correct_suggested_answers:
return 'partial'