public function test_grade_competency_in_plan() { global $CFG; $this->setUser($this->creator); $dg = $this->getDataGenerator(); $lpg = $dg->get_plugin_generator('core_competency'); $f1 = $lpg->create_framework(); $c1 = $lpg->create_competency(array('competencyframeworkid' => $f1->get_id())); $tpl = $lpg->create_template(); $lpg->create_template_competency(array('templateid' => $tpl->get_id(), 'competencyid' => $c1->get_id())); $plan = $lpg->create_plan(array('userid' => $this->user->id, 'templateid' => $tpl->get_id(), 'name' => 'Evil')); $uc = $lpg->create_user_competency(array('userid' => $this->user->id, 'competencyid' => $c1->get_id())); $evidence = external::grade_competency_in_plan($plan->get_id(), $c1->get_id(), 1, 'Evil note'); $this->assertEquals('The competency rating was manually set in the learning plan \'Evil\'.', $evidence->description); $this->assertEquals('A', $evidence->gradename); $this->assertEquals('Evil note', $evidence->note); $this->setUser($this->user); $this->setExpectedException('required_capability_exception'); $evidence = external::grade_competency_in_plan($plan->get_id(), $c1->get_id(), 1); }
public function test_data_for_user_competency_summary_in_plan() { global $CFG; $this->setUser($this->creator); $dg = $this->getDataGenerator(); $lpg = $dg->get_plugin_generator('core_competency'); $f1 = $lpg->create_framework(); $c1 = $lpg->create_competency(array('competencyframeworkid' => $f1->get_id())); $tpl = $lpg->create_template(); $lpg->create_template_competency(array('templateid' => $tpl->get_id(), 'competencyid' => $c1->get_id())); $plan = $lpg->create_plan(array('userid' => $this->user->id, 'templateid' => $tpl->get_id(), 'name' => 'Evil')); $uc = $lpg->create_user_competency(array('userid' => $this->user->id, 'competencyid' => $c1->get_id())); $evidence = \core_competency\external::grade_competency_in_plan($plan->get_id(), $c1->get_id(), 1, true); $evidence = \core_competency\external::grade_competency_in_plan($plan->get_id(), $c1->get_id(), 2, true); $summary = external::data_for_user_competency_summary_in_plan($c1->get_id(), $plan->get_id()); $this->assertTrue($summary->usercompetencysummary->cangrade); $this->assertEquals('Evil', $summary->plan->name); $this->assertEquals('B', $summary->usercompetencysummary->usercompetency->gradename); $this->assertEquals('B', $summary->usercompetencysummary->evidence[0]->gradename); $this->assertEquals('A', $summary->usercompetencysummary->evidence[1]->gradename); }