From e187e13947b8e43728d3b28bcdcd3c708efb202d Mon Sep 17 00:00:00 2001 From: Paul Holden Date: Mon, 13 Nov 2023 17:12:14 +0000 Subject: [PATCH] MDL-80098 core: correct arguments for invalidmoduleid exceptions. The "invalid module ID" should be passed as the `$a` constructor argument. --- blog/lib.php | 2 +- completion/tests/generator/lib.php | 2 +- lib/modinfolib.php | 2 +- lib/tests/modinfolib_test.php | 8 ++++++++ 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/blog/lib.php b/blog/lib.php index 1cd66666f55..0d4bb4ed8bf 100644 --- a/blog/lib.php +++ b/blog/lib.php @@ -1220,7 +1220,7 @@ function blog_validate_access($courseid, $modid, $groupid, $entryid, $userid) { throw new \moodle_exception('courseblogdisable', 'blog'); } if (!$mod = $DB->get_record('course_modules', array('id' => $modid))) { - throw new \moodle_exception('invalidmoduleid', 'error', $modid); + throw new \moodle_exception('invalidmoduleid', 'error', '', $modid); } $courseid = $mod->course; } diff --git a/completion/tests/generator/lib.php b/completion/tests/generator/lib.php index 2b661704403..71c1d0ec7cd 100644 --- a/completion/tests/generator/lib.php +++ b/completion/tests/generator/lib.php @@ -45,7 +45,7 @@ class core_completion_generator extends component_generator_base { throw new moodle_exception('modulerequired'); } if (!$DB->get_record('modules', ['id' => $record['module']])) { - throw new moodle_exception('invalidmoduleid'); + throw new moodle_exception('invalidmoduleid', 'error', '', $record['module']); } $record = (object) array_merge([ diff --git a/lib/modinfolib.php b/lib/modinfolib.php index 8428430b34c..698ebd1c33a 100644 --- a/lib/modinfolib.php +++ b/lib/modinfolib.php @@ -2805,7 +2805,7 @@ function get_course_and_cm_from_instance($instanceorid, $modulename, $courseorid $modinfo = get_fast_modinfo($course, $userid); $instances = $modinfo->get_instances_of($modulename); if (!array_key_exists($instanceid, $instances)) { - throw new moodle_exception('invalidmoduleid', 'error', $instanceid); + throw new moodle_exception('invalidmoduleid', 'error', '', $instanceid); } return array($course, $instances[$instanceid]); } diff --git a/lib/tests/modinfolib_test.php b/lib/tests/modinfolib_test.php index 7e789b1b7aa..f056d296550 100644 --- a/lib/tests/modinfolib_test.php +++ b/lib/tests/modinfolib_test.php @@ -1000,6 +1000,14 @@ class modinfolib_test extends advanced_testcase { $this->assertInstanceOf('dml_exception', $e); } + // Invalid module ID. + try { + get_course_and_cm_from_instance(-1, 'page', $course); + $this->fail(); + } catch (moodle_exception $e) { + $this->assertStringContainsString('Invalid module ID: -1', $e->getMessage()); + } + // Invalid module name. try { get_course_and_cm_from_cmid($page->cmid, '1337 h4x0ring');