diff --git a/grade/edit/letter/index.php b/grade/edit/letter/index.php index 393afe4c969..dedd4bf2462 100644 --- a/grade/edit/letter/index.php +++ b/grade/edit/letter/index.php @@ -141,7 +141,7 @@ if (!$edit) { if (!$admin and empty($data->override)) { $records = $DB->get_records('grade_letters', array('contextid' => $context->id)); foreach ($records as $record) { - $DB->delete_record('grade_letters', array('id' => $record->id)); + $DB->delete_records('grade_letters', array('id' => $record->id)); // Trigger the letter grade deleted event. $event = \core\event\grade_letter_deleted::create(array( 'objectid' => $record->id, diff --git a/lib/gradelib.php b/lib/gradelib.php index cb31417de22..9e37c4267ae 100644 --- a/lib/gradelib.php +++ b/lib/gradelib.php @@ -1401,7 +1401,7 @@ function remove_grade_letters($context, $showfeedback) { $records = $DB->get_records('grade_letters', array('contextid' => $context->id)); foreach ($records as $record) { - $DB->delete_record('grade_letters', array('id' => $record->id)); + $DB->delete_records('grade_letters', array('id' => $record->id)); // Trigger the letter grade deleted event. $event = \core\event\grade_letter_deleted::create(array( 'objectid' => $record->id, @@ -1473,7 +1473,7 @@ function grade_course_category_delete($categoryid, $newparentid, $showfeedback) $context = context_coursecat::instance($categoryid); $records = $DB->get_records('grade_letters', array('contextid' => $context->id)); foreach ($records as $record) { - $DB->delete_record('grade_letters', array('id' => $record->id)); + $DB->delete_records('grade_letters', array('id' => $record->id)); // Trigger the letter grade deleted event. $event = \core\event\grade_letter_deleted::create(array( 'objectid' => $record->id, diff --git a/lib/tests/gradelib_test.php b/lib/tests/gradelib_test.php index f1783158c09..fcc42adf80a 100644 --- a/lib/tests/gradelib_test.php +++ b/lib/tests/gradelib_test.php @@ -56,4 +56,52 @@ class core_gradelib_testcase extends advanced_testcase { $this->assertTrue(grade_update_mod_grades($modinstance)); } + + /** + * Tests the function remove_grade_letters(). + */ + public function test_remove_grade_letters() { + global $DB; + + $this->resetAfterTest(); + + $course = $this->getDataGenerator()->create_course(); + + $context = context_course::instance($course->id); + + // Add a grade letter to the course. + $letter = new stdClass(); + $letter->letter = 'M'; + $letter->lowerboundary = '100'; + $letter->contextid = $context->id; + $DB->insert_record('grade_letters', $letter); + + remove_grade_letters($context, false); + + // Confirm grade letter was deleted. + $this->assertEquals(0, $DB->count_records('grade_letters')); + } + + /** + * Tests the function grade_course_category_delete(). + */ + public function test_grade_course_category_delete() { + global $DB; + + $this->resetAfterTest(); + + $category = coursecat::create(array('name' => 'Cat1')); + + // Add a grade letter to the category. + $letter = new stdClass(); + $letter->letter = 'M'; + $letter->lowerboundary = '100'; + $letter->contextid = context_coursecat::instance($category->id)->id; + $DB->insert_record('grade_letters', $letter); + + grade_course_category_delete($category->id, '', false); + + // Confirm grade letter was deleted. + $this->assertEquals(0, $DB->count_records('grade_letters')); + } } diff --git a/mod/lesson/locallib.php b/mod/lesson/locallib.php index 767b5807b22..0d8d40757ed 100644 --- a/mod/lesson/locallib.php +++ b/mod/lesson/locallib.php @@ -4360,7 +4360,7 @@ abstract class lesson_page extends lesson_base { if (count($answers) > 1) { $answer = array_shift($answers); foreach ($answers as $a) { - $DB->delete_record('lesson_answers', array('id' => $a->id)); + $DB->delete_records('lesson_answers', array('id' => $a->id)); } } else if (count($answers) == 1) { $answer = array_shift($answers);