ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
assLongMenuTest.php
Go to the documentation of this file.
1<?php
10{
11 protected $backupGlobals = false;
12
13
14 protected static function getMethod($name)
15 {
16 $class = new ReflectionClass('assLongMenu');
17 $method = $class->getMethod($name);
18 $method->setAccessible(true);
19 return $method;
20 }
21
22 protected function setUp()
23 {
24 $GLOBALS['DIC']['ilDB'] = 'test';
25
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();
30 } else {
31 chdir(dirname(__FILE__));
32 chdir('../../../');
33 }
34 require_once './Services/Utilities/classes/class.ilUtil.php';
35 }
36
38 {
39 $instance = new assLongMenu();
40 $this->assertInstanceOf('assLongMenu', $instance);
41 }
42
44 {
45 $instance = new assLongMenu();
46 $this->assertEquals('qpl_qst_lome', $instance->getAdditionalTableName());
47 }
48
50 {
51 $instance = new assLongMenu();
52 $this->assertEquals('assLongMenu', $instance->getQuestionType());
53 }
54
56 {
57 $instance = new assLongMenu();
58 $this->assertEquals('qpl_a_lome', $instance->getAnswerTableName());
59 }
60
62 {
63 $method = self::getMethod('correctAnswerDoesNotExistInAnswerOptions');
64 $obj = new assLongMenu();
65 $value = $method->invokeArgs($obj, array(array(array(5),1,1), array(1,2,3,4)));
66 $this->assertEquals(true, $value);
67 }
68
70 {
71 $method = self::getMethod('correctAnswerDoesNotExistInAnswerOptions');
72 $obj = new assLongMenu();
73 $value = $method->invokeArgs($obj, array(array(array(1),1,1), array(1,2,3,4)));
74 $this->assertEquals(false, $value);
75 }
76
78 {
79 $obj = new assLongMenu();
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);
84 }
85
87 {
88 $obj = new assLongMenu();
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);
93 }
94
96 {
97 $obj = new assLongMenu();
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);
102 }
103
105 {
106 $obj = new assLongMenu();
107 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1'),
108 1 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1')));
109 $obj->setAnswers(array(array(1,2,3,4)));
110 $obj->setPoints(4.5);
111 $obj->setTitle('LongMenu Title');
112 $obj->setLongMenuTextValue('LongMenu Question');
113 $this->assertEquals($obj->isComplete(), true);
114 }
115
117 {
118 $obj = new assLongMenu();
119 $this->assertEquals($obj->checkQuestionCustomPart(), false);
120 }
121
123 {
124 $obj = new assLongMenu();
125 $obj->setAnswers(array(array(1,2,3,4)));
126 $this->assertEquals($obj->checkQuestionCustomPart(), false);
127 }
128
130 {
131 $obj = new assLongMenu();
132 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1'),
133 1 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1')));
134 $this->assertEquals($obj->checkQuestionCustomPart(), false);
135 }
137 {
138 $obj = new assLongMenu();
139 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1'),
140 1 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1')));
141 $obj->setAnswers(array(array('answer')));
142 $this->assertEquals($obj->checkQuestionCustomPart(), false);
143 }
145 {
146 $obj = new assLongMenu();
147 $obj->setCorrectAnswers(array( 0 => array( 0 => array(0 => 'answer'),1 => '2.25', 2 => '1')));
148 $obj->setAnswers(array(array(1)));
149 $this->assertEquals($obj->checkQuestionCustomPart(), false);
150 }
151
153 {
154 $obj = new assLongMenu();
155 $obj->setCorrectAnswers(array( 0 => array( 0 => array(),1 => '2.25', 2 => '1')));
156 $obj->setAnswers(array(array('answer')));
157 $this->assertEquals($obj->checkQuestionCustomPart(), false);
158 }
159
161 {
162 $obj = new assLongMenu();
163 $obj->setCorrectAnswers(array( 0 => array( 0 => array())));
164 $obj->setAnswers(array(array('answer')));
165 $this->assertEquals($obj->checkQuestionCustomPart(), false);
166 }
167
169 {
170 $obj = new assLongMenu();
171 $obj->setCorrectAnswers(array( 0 => array( 0 => array('answer'),1 => 0, 2 => '1')));
172 $obj->setAnswers(array(array('answer')));
173 $this->assertEquals($obj->checkQuestionCustomPart(), false);
174 }
175
177 {
178 $obj = new assLongMenu();
179 $obj->setCorrectAnswers(array( 0 => array( 0 => array('answer'),1 => 1, 2 => '1')));
180 $obj->setAnswers(array(array('answer')));
181 $this->assertEquals($obj->checkQuestionCustomPart(), true);
182 }
183
185 {
186 $obj = new assLongMenu();
187 $array = array( 0 => 'squirrel', 1 => 'icebear');
188 $_POST['answer'] = $array;
189 $this->assertEquals($obj->getSolutionSubmit(), $array);
190 }
191
193 {
194 $obj = new assLongMenu();
195 $obj->setAnswerType(0);
196 $this->assertEquals(0, $obj->getAnswerType());
197 }
199 {
200 $obj = new assLongMenu();
201 $this->assertEquals('', $obj->getLongMenuTextValue());
202 $obj->setLongMenuTextValue('dummy text');
203 $this->assertEquals('dummy text', $obj->getLongMenuTextValue());
204 }
205
207 {
208 $obj = new assLongMenu();
209 $obj->setJsonStructure(json_encode(array(1 => 'bla')));
210 $this->assertEquals('{"1":"bla"}', $obj->getJsonStructure());
211 }
212
214 {
215 $obj = new assLongMenu();
216 $this->assertEquals(false, $obj->isShuffleAnswersEnabled());
217 $this->assertNotEquals(true, $obj->isShuffleAnswersEnabled());
218 }
219}
$_POST["username"]
An exception for terminatinating execution or to throw for unit testing.
test_getAdditionalTableName_shouldReturnString()
test_setLongMenuTextValue_shouldReturnGetLongMenuTextValue()
test_getMaximumPoints_shouldBeFourPointFive()
test_getAnswerTableName_shouldReturnString()
static getMethod($name)
test_isShuffleAnswersEnabled_shouldReturnFalse()
test_checkQuestionCustomPart_shouldBeFalseBecauseToManyCorrectAnswers()
test_checkQuestionCustomPart_shouldBeFalseBecauseCorrectAnswerHasNoAnswers()
test_setAnswerType_shouldReturnGetAnswerType()
test_getSolutionSubmit_shouldReturnSolution()
test_checkQuestionCustomPart_shouldBeFalseBecauseOnlyCorrectAnswers()
test_instantiateObject_shouldReturnInstance()
test_correctAnswerDoesNotExistInAnswerOptions_shouldReturnTrue()
test_checkQuestionCustomPart_shouldBeFalseBecauseNoCustomPart()
test_checkQuestionCustomPart_shouldBeFalseBecauseCorrectAnswerPointsAreZero()
test_getMaximumPoints_shouldBeFour()
test_checkQuestionCustomPart_shouldBeFalseBecauseOnlyAnswers()
test_checkQuestionCustomPart_shouldBeTrue()
test_checkQuestionCustomPart_shouldBeFalseBecauseCorrectAnswerHasNoPoints()
test_getQuestionType_shouldReturnString()
test_correctAnswerDoesNotExistInAnswerOptions_shouldReturnFalse()
test_setJsonStructure_shouldReturnGetJsonStructure()
test_checkQuestionCustomPart_shouldBeFalseBecauseCorrectAnswerDoesNotExistsInAnswers()
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.