ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ilTermsOfServiceCriterionFormGUITest Class Reference

Class ilTermsOfServiceCriterionFormGUITest. More...

+ Inheritance diagram for ilTermsOfServiceCriterionFormGUITest:
+ Collaboration diagram for ilTermsOfServiceCriterionFormGUITest:

Public Member Functions

 testFormIsProperlyBuiltForNewCriterionAssignment ()
 
 testFormIsProperlyBuiltForExistingCriterionAssignment ()
 
 testFormForNewCriterionAssignmentCanBeSavedForValidInput ()
 
 testFormForExistingAssignmentCannotBeSavedForInvalidInput ()
 

Additional Inherited Members

- Protected Member Functions inherited from ilTermsOfServiceBaseTest
 setUp ()
 
 getLanguageMock ()
 
 getUiFactoryMock ()
 
 setGlobalVariable (string $name, $value)
 
 getCriterionConfig ($value=null)
 
- Protected Attributes inherited from ilTermsOfServiceBaseTest
 $dic
 

Detailed Description

Member Function Documentation

◆ testFormForExistingAssignmentCannotBeSavedForInvalidInput()

ilTermsOfServiceCriterionFormGUITest::testFormForExistingAssignmentCannotBeSavedForInvalidInput ( )
Exceptions
ReflectionException

Definition at line 305 of file ilTermsOfServiceCriterionFormGUITest.php.

305 : void
306 {
307 $lng = $this->getLanguageMock();
308
309 $lng
310 ->expects($this->any())
311 ->method('txt')
312 ->willReturn('translation');
313
314 $this->setGlobalVariable('lng', $lng);
315
316 $document = $this
317 ->getMockBuilder(ilTermsOfServiceDocument::class)
318 ->disableOriginalConstructor()
319 ->getMock();
320
321 $document
322 ->expects($this->never())
323 ->method('save');
324
325 $document
326 ->expects($this->never())
327 ->method('attachCriterion');
328
329 $criterionAssignment = $this
330 ->getMockBuilder(ilTermsOfServiceDocumentCriterionAssignment::class)
331 ->disableOriginalConstructor()
332 ->setMethods(['getId', 'getCriterionId', 'getCriterionValue'])
333 ->getMock();
334
335 $criterionAssignment
336 ->expects($this->any())
337 ->method('getId')
338 ->willReturn(1);
339
340 $criterionAssignment
341 ->expects($this->any())
342 ->method('getCriterionId')
343 ->willReturn('usr_global_role');
344
345 $criterionAssignment
346 ->expects($this->any())
347 ->method('getCriterionValue')
348 ->willReturn(new ilTermsOfServiceCriterionConfig(['role_id' => 4]));
349
350 $criterionTypeFactory = $this
351 ->getMockBuilder(ilTermsOfServiceCriterionTypeFactoryInterface::class)
352 ->getMock();
353
354 $criterionType1 = $this
355 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
356 ->getMock();
357
358 $criterionType1
359 ->expects($this->any())
360 ->method('getTypeIdent')
361 ->willReturn('dummy1');
362
363 $criterionType1
364 ->expects($this->any())
365 ->method('ui')
366 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
367
368 $criterionType2 = $this
369 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
370 ->getMock();
371
372 $criterionType2
373 ->expects($this->any())
374 ->method('getTypeIdent')
375 ->willReturn('dummy2');
376
377 $criterionTypeGui2 = $this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock();
378
379 $criterionTypeGui2
380 ->expects($this->any())
381 ->method('getConfigByForm')
382 ->willReturn($criterionAssignment->getCriterionValue());
383
384 $criterionType2
385 ->expects($this->any())
386 ->method('ui')
387 ->willReturn($criterionTypeGui2);
388
389 $criterionTypeFactory
390 ->expects($this->once())
391 ->method('getTypesByIdentMap')
392 ->willReturn([
393 $criterionType1,
394 $criterionType2
395 ]);
396
397 $criterionTypeFactory
398 ->expects($this->exactly(2))
399 ->method('findByTypeIdent')
400 ->willReturnOnConsecutiveCalls(
401 $this->throwException(new ilTermsOfServiceCriterionTypeNotFoundException('')),
402 $criterionType1
403 );
404
405 $anotherCriterionAssignment = $this
406 ->getMockBuilder(ilTermsOfServiceDocumentCriterionAssignment::class)
407 ->disableOriginalConstructor()
408 ->setMethods(['getId', 'getCriterionId', 'getCriterionValue'])
409 ->getMock();
410
411 $anotherCriterionAssignment
412 ->expects($this->any())
413 ->method('getId')
414 ->willReturn(2);
415
416 $anotherCriterionAssignment
417 ->expects($this->any())
418 ->method('getCriterionId')
419 ->willReturn('usr_global_role');
420
421 $anotherCriterionAssignment
422 ->expects($this->any())
423 ->method('getCriterionValue')
424 ->willReturn(new ilTermsOfServiceCriterionConfig(['role_id' => 4]));
425
426 $document
427 ->expects($this->once())
428 ->method('criteria')
429 ->willReturn([$anotherCriterionAssignment]);
430
431 $user = $this
432 ->getMockBuilder(ilObjUser::class)
433 ->disableOriginalConstructor()
434 ->setMethods(['getId'])
435 ->getMock();
436
437 $user
438 ->expects($this->any())
439 ->method('getId')
440 ->willReturn(6);
441
442 $form = $this->getMockBuilder(ilTermsOfServiceCriterionFormGUI::class)
443 ->setConstructorArgs([
444 $document,
445 $criterionAssignment,
446 $criterionTypeFactory,
447 $user,
448 'action',
449 'save',
450 'cancel'
451 ])
452 ->setMethods(['checkInput'])
453 ->getMock();
454
455 $form
456 ->expects($this->exactly(2))
457 ->method('checkInput')
458 ->willReturn(true);
459
460 $_POST = [
461 'criterion' => $criterionType1->getTypeIdent()
462 ];
463
464 $form->setCheckInputCalled(true);
465
466 $this->assertFalse(
467 $form->saveObject(),
468 'Failed asserting form cannot be saved selected criterion type was not found'
469 );
470 $this->assertTrue($form->hasTranslatedError());
471 $this->assertNotEmpty($form->getTranslatedError());
472
473 $this->assertFalse(
474 $form->saveObject(),
475 'Failed asserting form cannot be saved selected criterion type was already assigned to document'
476 );
477 $this->assertTrue($form->hasTranslatedError());
478 $this->assertNotEmpty($form->getTranslatedError());
479 }
$_POST["username"]
setGlobalVariable(string $name, $value)
Class ilTermsOfServiceCriterionConfig.
$lng

References $_POST, $lng, ilTermsOfServiceBaseTest\getLanguageMock(), and ilTermsOfServiceBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

◆ testFormForNewCriterionAssignmentCanBeSavedForValidInput()

ilTermsOfServiceCriterionFormGUITest::testFormForNewCriterionAssignmentCanBeSavedForValidInput ( )
Exceptions
ReflectionException

Definition at line 186 of file ilTermsOfServiceCriterionFormGUITest.php.

186 : void
187 {
188 $document = $this
189 ->getMockBuilder(ilTermsOfServiceDocument::class)
190 ->disableOriginalConstructor()
191 ->getMock();
192
193 $document
194 ->expects($this->once())
195 ->method('save');
196
197 $document
198 ->expects($this->once())
199 ->method('attachCriterion');
200
201 $criterionAssignment = $this
202 ->getMockBuilder(ilTermsOfServiceDocumentCriterionAssignment::class)
203 ->disableOriginalConstructor()
204 ->setMethods(['getId', 'getCriterionId', 'getCriterionValue'])
205 ->getMock();
206
207 $criterionAssignment
208 ->expects($this->any())
209 ->method('getId')
210 ->willReturn(0);
211
212 $criterionAssignment
213 ->expects($this->any())
214 ->method('getCriterionId')
215 ->willReturn('');
216
217 $criterionTypeFactory = $this
218 ->getMockBuilder(ilTermsOfServiceCriterionTypeFactoryInterface::class)
219 ->getMock();
220
221 $criterionType1 = $this
222 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
223 ->getMock();
224
225 $criterionType1
226 ->expects($this->any())
227 ->method('getTypeIdent')
228 ->willReturn('dummy1');
229
230 $criterionType1
231 ->expects($this->any())
232 ->method('ui')
233 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
234
235 $criterionType2 = $this
236 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
237 ->getMock();
238
239 $criterionType2
240 ->expects($this->any())
241 ->method('getTypeIdent')
242 ->willReturn('dummy2');
243
244 $criterionType2
245 ->expects($this->any())
246 ->method('ui')
247 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
248
249 $criterionTypeFactory
250 ->expects($this->once())
251 ->method('getTypesByIdentMap')
252 ->willReturn([
253 $criterionType1,
254 $criterionType2
255 ]);
256
257 $criterionTypeFactory
258 ->expects($this->once())
259 ->method('findByTypeIdent')
260 ->willReturn($criterionType1);
261
262 $user = $this
263 ->getMockBuilder(ilObjUser::class)
264 ->disableOriginalConstructor()
265 ->setMethods(['getId'])
266 ->getMock();
267
268 $user
269 ->expects($this->any())
270 ->method('getId')
271 ->willReturn(6);
272
273 $form = $this->getMockBuilder(ilTermsOfServiceCriterionFormGUI::class)
274 ->setConstructorArgs([
275 $document,
276 $criterionAssignment,
277 $criterionTypeFactory,
278 $user,
279 'action',
280 'save',
281 'cancel'
282 ])
283 ->setMethods(['checkInput'])
284 ->getMock();
285
286 $form
287 ->expects($this->once())
288 ->method('checkInput')
289 ->willReturn(true);
290
291 $_POST = [
292 'criterion' => $criterionType1->getTypeIdent()
293 ];
294
295 $form->setCheckInputCalled(true);
296
297 $this->assertTrue($form->saveObject());
298 $this->assertFalse($form->hasTranslatedError());
299 $this->assertEmpty($form->getTranslatedError());
300 }

References $_POST.

◆ testFormIsProperlyBuiltForExistingCriterionAssignment()

ilTermsOfServiceCriterionFormGUITest::testFormIsProperlyBuiltForExistingCriterionAssignment ( )
Exceptions
ReflectionException

Definition at line 97 of file ilTermsOfServiceCriterionFormGUITest.php.

97 : void
98 {
99 $document = $this
100 ->getMockBuilder(ilTermsOfServiceDocument::class)
101 ->disableOriginalConstructor()
102 ->getMock();
103
104 $criterionAssignment = $this
105 ->getMockBuilder(ilTermsOfServiceDocumentCriterionAssignment::class)
106 ->disableOriginalConstructor()
107 ->setMethods(['getId', 'getCriterionId', 'getCriterionValue'])
108 ->getMock();
109
110 $criterionAssignment
111 ->expects($this->any())
112 ->method('getId')
113 ->willReturn(1);
114
115 $criterionAssignment
116 ->expects($this->any())
117 ->method('getCriterionId')
118 ->willReturn('dummy2');
119
120 $criterionAssignment
121 ->expects($this->any())
122 ->method('getCriterionValue')
123 ->willReturn(new ilTermsOfServiceCriterionConfig([]));
124
125 $criterionTypeFactory = $this
126 ->getMockBuilder(ilTermsOfServiceCriterionTypeFactoryInterface::class)
127 ->getMock();
128
129 $criterionType1 = $this
130 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
131 ->getMock();
132
133 $criterionType1
134 ->expects($this->any())
135 ->method('getTypeIdent')
136 ->willReturn('dummy1');
137
138 $criterionType1
139 ->expects($this->any())
140 ->method('ui')
141 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
142
143 $criterionType2 = $this
144 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
145 ->getMock();
146
147 $criterionType2
148 ->expects($this->any())
149 ->method('getTypeIdent')
150 ->willReturn('dummy2');
151
152 $criterionType2
153 ->expects($this->any())
154 ->method('ui')
155 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
156
157 $criterionTypeFactory
158 ->expects($this->once())
159 ->method('getTypesByIdentMap')
160 ->willReturn([
161 $criterionType1,
162 $criterionType2
163 ]);
164
165 $user = $this
166 ->getMockBuilder(ilObjUser::class)
167 ->disableOriginalConstructor()
168 ->getMock();
169
171 $document,
172 $criterionAssignment,
173 $criterionTypeFactory,
174 $user,
175 '',
176 'save',
177 'cancel'
178 );
179
180 $this->assertEquals($criterionType2->getTypeIdent(), $form->getItemByPostVar('criterion')->getValue());
181 }

◆ testFormIsProperlyBuiltForNewCriterionAssignment()

ilTermsOfServiceCriterionFormGUITest::testFormIsProperlyBuiltForNewCriterionAssignment ( )
Exceptions
ReflectionException

Definition at line 13 of file ilTermsOfServiceCriterionFormGUITest.php.

13 : void
14 {
15 $document = $this
16 ->getMockBuilder(ilTermsOfServiceDocument::class)
17 ->disableOriginalConstructor()
18 ->getMock();
19
20 $criterionAssignment = $this
21 ->getMockBuilder(ilTermsOfServiceDocumentCriterionAssignment::class)
22 ->disableOriginalConstructor()
23 ->setMethods(['getId', 'getCriterionId'])
24 ->getMock();
25
26 $criterionAssignment
27 ->expects($this->any())
28 ->method('getId')
29 ->willReturn(0);
30
31 $criterionAssignment
32 ->expects($this->any())
33 ->method('getCriterionId')
34 ->willReturn('');
35
36 $criterionTypeFactory = $this
37 ->getMockBuilder(ilTermsOfServiceCriterionTypeFactoryInterface::class)
38 ->getMock();
39
40 $criterionType1 = $this
41 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
42 ->getMock();
43
44 $criterionType1
45 ->expects($this->any())
46 ->method('getTypeIdent')
47 ->willReturn('dummy1');
48
49 $criterionType1
50 ->expects($this->any())
51 ->method('ui')
52 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
53
54 $criterionType2 = $this
55 ->getMockBuilder(ilTermsOfServiceCriterionType::class)
56 ->getMock();
57
58 $criterionType2
59 ->expects($this->any())
60 ->method('getTypeIdent')
61 ->willReturn('dummy2');
62
63 $criterionType2
64 ->expects($this->any())
65 ->method('ui')
66 ->willReturn($this->getMockBuilder(ilTermsOfServiceCriterionTypeGUI::class)->getMock());
67
68 $criterionTypeFactory
69 ->expects($this->once())
70 ->method('getTypesByIdentMap')
71 ->willReturn([
72 $criterionType1,
73 $criterionType2
74 ]);
75
76 $user = $this
77 ->getMockBuilder(ilObjUser::class)
78 ->disableOriginalConstructor()
79 ->getMock();
80
82 $document,
83 $criterionAssignment,
84 $criterionTypeFactory,
85 $user,
86 '',
87 'save',
88 'cancel'
89 );
90
91 $this->assertEquals($criterionType1->getTypeIdent(), $form->getItemByPostVar('criterion')->getValue());
92 }

The documentation for this class was generated from the following file: