From 1c00938de970cb41b95757a29f2af26e2afd49b1 Mon Sep 17 00:00:00 2001 From: Paul Holden Date: Wed, 21 Apr 2021 22:17:48 +0100 Subject: [PATCH] MDL-71392 mod_quiz: don't display grade to pass if not set. --- mod/quiz/tests/behat/info_page.feature | 10 ++++++++++ mod/quiz/view.php | 3 ++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/mod/quiz/tests/behat/info_page.feature b/mod/quiz/tests/behat/info_page.feature index 3a9d45cef7f..96c34611c29 100644 --- a/mod/quiz/tests/behat/info_page.feature +++ b/mod/quiz/tests/behat/info_page.feature @@ -30,3 +30,13 @@ Feature: Display of information before starting a quiz | TF1 | 1 | When I am on the "Quiz 1" "mod_quiz > View" page logged in as "student" Then I should see "Grade to pass: 60.00 out of 100.00" + + Scenario: Check the pass grade is not displayed if not set + Given the following "activities" exist: + | activity | name | intro | course | idnumber | gradepass | + | quiz | Quiz 1 | Quiz 1 description | C1 | quiz1 | | + And quiz "Quiz 1" contains the following questions: + | question | page | + | TF1 | 1 | + When I am on the "Quiz 1" "mod_quiz > View" page logged in as "student" + Then I should not see "Grade to pass: 0.00" diff --git a/mod/quiz/view.php b/mod/quiz/view.php index a8137c9b613..53edef2b677 100644 --- a/mod/quiz/view.php +++ b/mod/quiz/view.php @@ -187,7 +187,8 @@ if ($quiz->attempts != 1) { quiz_get_grading_option_name($quiz->grademethod)); } -if ($item && $item->gradepass) { +// Inform user of the grade to pass if non-zero. +if ($item && grade_floats_different($item->gradepass, 0)) { $a = new stdClass(); $a->grade = quiz_format_grade($quiz, $item->gradepass); $a->maxgrade = quiz_format_grade($quiz, $quiz->grade);