/** * @param ilTestSession $testSession */ protected function handleSkillTriggering(ilTestSession $testSession) { $questionList = $this->buildTestPassQuestionList(); $questionList->load(); $testResults = $this->object->getTestResult($testSession->getActiveId(), $testSession->getPass(), true); require_once 'Modules/Test/classes/class.ilTestSkillEvaluation.php'; $skillEvaluation = new ilTestSkillEvaluation($this->db, $this->object->getTestId(), $this->object->getRefId()); $skillEvaluation->setUserId($testSession->getUserId()); $skillEvaluation->setActiveId($testSession->getActiveId()); $skillEvaluation->setPass($testSession->getPass()); $skillEvaluation->setNumRequiredBookingsForSkillTriggering($this->assSettings->get('ass_skl_trig_num_answ_barrier', ilObjAssessmentFolder::DEFAULT_SKL_TRIG_NUM_ANSWERS_BARRIER)); $skillEvaluation->init($questionList); $skillEvaluation->evaluate($testResults); $skillEvaluation->handleSkillTriggering(); }