MDL-53451 competency: Fix tests failing due to context changes

This commit is contained in:
Frederic Massart 2016-04-18 11:34:46 +08:00
parent de8cdb6854
commit bfeb546f44
2 changed files with 15 additions and 3 deletions

View File

@ -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;

View File

@ -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.');
}