From bfeb546f44b66117bfaf937d960d6a2c4aff3b88 Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Mon, 18 Apr 2016 11:34:46 +0800 Subject: [PATCH] MDL-53451 competency: Fix tests failing due to context changes --- competency/tests/external_test.php | 7 +++++-- competency/tests/generator/lib.php | 11 ++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/competency/tests/external_test.php b/competency/tests/external_test.php index 5b08c9f669d..287ae50d566 100644 --- a/competency/tests/external_test.php +++ b/competency/tests/external_test.php @@ -742,9 +742,9 @@ class core_competency_external_testcase extends externallib_advanced_testcase { */ public function test_create_competency_with_read_permissions() { $this->setExpectedException('required_capability_exception'); - $framework = $this->create_competency_framework(1, true); + $framework = $this->getDataGenerator()->get_plugin_generator('core_competency')->create_framework(); $this->setUser($this->user); - $competency = $this->create_competency(1, $framework->id); + $competency = $this->create_competency(1, $framework->get_id()); } /** @@ -1747,6 +1747,9 @@ class core_competency_external_testcase extends externallib_advanced_testcase { */ public function test_get_scale_values() { global $DB; + + $this->setUser($this->creator); + // Create a scale. $record = new stdClass(); $record->courseid = 0; diff --git a/competency/tests/generator/lib.php b/competency/tests/generator/lib.php index 2137ca61aae..40068251201 100644 --- a/competency/tests/generator/lib.php +++ b/competency/tests/generator/lib.php @@ -41,8 +41,12 @@ use core_competency\user_competency_plan; use core_competency\user_evidence; use core_competency\user_evidence_competency; + defined('MOODLE_INTERNAL') || die(); +global $CFG; +require_once($CFG->libdir . '/grade/grade_scale.php'); + /** * Competency data generator class. * @@ -159,7 +163,12 @@ class core_competency_generator extends component_generator_base { $record->scaleid = $this->scale->id; } if (!isset($record->scaleconfiguration)) { - $values = external::get_scale_values($record->scaleid); + $scale = grade_scale::fetch(array('id' => $record->scaleid)); + $values = $scale->load_items(); + foreach ($values as $key => $value) { + // Add a key (make the first value 1). + $values[$key] = array('id' => $key + 1, 'name' => $value); + } if (count($values) < 2) { throw new coding_exception('Please provide the scale configuration for one-item scales.'); }