17 $method = $class->getMethod(
$name);
18 $method->setAccessible(
true);
22 protected function setUp() : void
26 require_once
'./Modules/TestQuestionPool/classes/class.assLongMenu.php';
27 if (defined(
'ILIAS_PHPUNIT_CONTEXT')) {
28 include_once(
"./Services/PHPUnit/classes/class.ilUnitUtil.php");
29 ilUnitUtil::performInitialisation();
31 chdir(dirname(__FILE__));
34 require_once
'./Services/Utilities/classes/class.ilUtil.php';
40 $this->assertInstanceOf(
'assLongMenu', $instance);
46 $this->assertEquals(
'qpl_qst_lome', $instance->getAdditionalTableName());
52 $this->assertEquals(
'assLongMenu', $instance->getQuestionType());
58 $this->assertEquals(
'qpl_a_lome', $instance->getAnswerTableName());
63 $method = self::getMethod(
'correctAnswerDoesNotExistInAnswerOptions');
65 $value = $method->invokeArgs($obj, array(array(array(5),1,1), array(1,2,3,4)));
66 $this->assertEquals(
true, $value);
71 $method = self::getMethod(
'correctAnswerDoesNotExistInAnswerOptions');
73 $value = $method->invokeArgs($obj, array(array(array(1),1,1), array(1,2,3,4)));
74 $this->assertEquals(
false, $value);
80 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2', 2 =>
'1'),
81 1 => array( 0 => array(0 =>
'answer'),1 =>
'2', 2 =>
'1')));
82 $value = $obj->getMaximumPoints();
83 $this->assertEquals(4, $value);
89 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1'),
90 1 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1')));
91 $value = $obj->getMaximumPoints();
92 $this->assertEquals(4.5, $value);
98 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1'),
99 1 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1')));
100 $obj->setAnswers(array(array(1,2,3,4)));
101 $this->assertEquals($obj->isComplete(),
false);
120 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
126 $obj->setAnswers(array(array(1,2,3,4)));
127 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
133 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1'),
134 1 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1')));
135 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
140 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1'),
141 1 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1')));
142 $obj->setAnswers(array(array(
'answer')));
143 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
148 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 =>
'answer'),1 =>
'2.25', 2 =>
'1')));
149 $obj->setAnswers(array(array(1)));
150 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
156 $obj->setCorrectAnswers(array( 0 => array( 0 => array(),1 =>
'2.25', 2 =>
'1')));
157 $obj->setAnswers(array(array(
'answer')));
158 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
164 $obj->setCorrectAnswers(array( 0 => array( 0 => array())));
165 $obj->setAnswers(array(array(
'answer')));
166 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
172 $obj->setCorrectAnswers(array( 0 => array( 0 => array(
'answer'),1 => 0, 2 =>
'1')));
173 $obj->setAnswers(array(array(
'answer')));
174 $this->assertEquals($obj->checkQuestionCustomPart(),
false);
180 $obj->setCorrectAnswers(array( 0 => array( 0 => array(
'answer'),1 => 1, 2 =>
'1')));
181 $obj->setAnswers(array(array(
'answer')));
182 $this->assertEquals($obj->checkQuestionCustomPart(),
true);
188 $array = array( 0 =>
'squirrel', 1 =>
'icebear');
189 $_POST[
'answer'] = $array;
190 $this->assertEquals($obj->getSolutionSubmit(), $array);
196 $obj->setAnswerType(0);
197 $this->assertEquals(0, $obj->getAnswerType());
212 $obj->setJsonStructure(json_encode(array(1 =>
'bla')));
213 $this->assertEquals(
'{"1":"bla"}', $obj->getJsonStructure());
219 $this->assertEquals(
false, $obj->isShuffleAnswersEnabled());
220 $this->assertNotEquals(
true, $obj->isShuffleAnswersEnabled());
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']