11 $database = $this->getMockBuilder(
'ilDBInterface')
12 ->disableOriginalConstructor()
15 $logger = $this->getMockBuilder(
'ilLogger')
16 ->disableOriginalConstructor()
19 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
20 ->disableOriginalConstructor()
23 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
25 $database->method(
'nextId')
28 $database->method(
'insert')
32 'id' => array(
'integer', 10),
33 'obj_id' => array(
'integer', 100),
34 'obj_type' => array(
'text',
'crs'),
35 'certificate_content' => array(
'clob',
'<xml>Some Content</xml>'),
36 'certificate_hash' => array(
'text', md5(
'<xml>Some Content</xml>')),
37 'template_values' => array(
'clob',
'[]'),
38 'version' => array(
'integer', 1),
39 'ilias_version' => array(
'text',
'v5.4.0'),
40 'created_timestamp' => array(
'integer', 123456789),
41 'currently_active' => array(
'integer',
true),
42 'background_image_path' => array(
'text',
'/some/where/background.jpg'),
43 'deleted' => array(
'integer', 0),
44 'thumbnail_image_path' => array(
'text',
'some/path/test.svg')
48 $logger->expects($this->atLeastOnce())
54 '<xml>Some Content</xml>',
55 md5(
'<xml>Some Content</xml>'),
61 $backgroundImagePath =
'/some/where/background.jpg',
68 $repository->save($template);
73 $database = $this->getMockBuilder(
'ilDBInterface')
74 ->disableOriginalConstructor()
77 $logger = $this->getMockBuilder(
'ilLogger')
78 ->disableOriginalConstructor()
81 $database->method(
'fetchAssoc')
82 ->willReturnOnConsecutiveCalls(
87 'certificate_content' =>
'<xml>Some Content</xml>',
88 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
89 'template_values' =>
'[]',
91 'ilias_version' =>
'v5.4.0',
92 'created_timestamp' => 123456789,
93 'currently_active' =>
true,
94 'background_image_path' =>
'/some/where/background.jpg',
95 'thumbnail_image_path' =>
'some/path/test.svg' 101 'certificate_content' =>
'<xml>Some Other Content</xml>',
102 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
103 'template_values' =>
'[]',
105 'ilias_version' =>
'v5.3.0',
106 'created_timestamp' => 123456789,
107 'currently_active' =>
false,
108 'background_image_path' =>
'/some/where/else/background.jpg',
109 'thumbnail_image_path' =>
'some/path/test.svg' 113 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
114 ->disableOriginalConstructor()
117 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
121 $templates = $repository->fetchCertificateTemplatesByObjId(10);
123 $this->assertEquals(1, $templates[0]->getId());
124 $this->assertEquals(30, $templates[1]->getId());
129 $database = $this->getMockBuilder(
'ilDBInterface')
130 ->disableOriginalConstructor()
133 $logger = $this->getMockBuilder(
'ilLogger')
134 ->disableOriginalConstructor()
137 $database->method(
'fetchAssoc')
138 ->willReturnOnConsecutiveCalls(
143 'certificate_content' =>
'<xml>Some Content</xml>',
144 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
145 'template_values' =>
'[]',
147 'ilias_version' =>
'v5.4.0',
148 'created_timestamp' => 123456789,
149 'currently_active' =>
true,
150 'background_image_path' =>
'/some/where/background.jpg',
151 'thumbnail_image_path' =>
'some/path/test.svg' 157 'certificate_content' =>
'<xml>Some Other Content</xml>',
158 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
159 'template_values' =>
'[]',
161 'ilias_version' =>
'v5.3.0',
162 'created_timestamp' => 123456789,
163 'currently_active' =>
false,
164 'background_image_path' =>
'/some/where/else/background.jpg',
165 'thumbnail_image_path' =>
'some/path/test.svg' 169 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
170 ->disableOriginalConstructor()
173 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
177 $template = $repository->fetchCurrentlyActiveCertificate(10);
179 $this->assertEquals(1, $template->getId());
184 $database = $this->getMockBuilder(
'ilDBInterface')
185 ->disableOriginalConstructor()
188 $logger = $this->getMockBuilder(
'ilLogger')
189 ->disableOriginalConstructor()
192 $database->method(
'fetchAssoc')
193 ->willReturnOnConsecutiveCalls(
198 'certificate_content' =>
'<xml>Some Content</xml>',
199 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
200 'template_values' =>
'[]',
202 'ilias_version' =>
'v5.4.0',
203 'created_timestamp' => 123456789,
204 'currently_active' =>
true,
205 'background_image_path' =>
'/some/where/background.jpg',
206 'thumbnail_image_path' =>
'some/path/test.svg' 212 'certificate_content' =>
'<xml>Some Other Content</xml>',
213 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
214 'template_values' =>
'[]',
216 'ilias_version' =>
'v5.3.0',
217 'created_timestamp' => 123456789,
218 'currently_active' =>
false,
219 'background_image_path' =>
'/some/where/else/background.jpg',
220 'thumbnail_image_path' =>
'some/path/test.svg' 224 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
225 ->disableOriginalConstructor()
228 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
232 $template = $repository->fetchPreviousCertificate(10);
234 $this->assertEquals(30, $template->getId());
242 $database = $this->getMockBuilder(
'ilDBInterface')
243 ->disableOriginalConstructor()
246 $logger = $this->getMockBuilder(
'ilLogger')
247 ->disableOriginalConstructor()
250 $database->method(
'quote')
251 ->withConsecutive(array(10,
'integer'), array(200,
'integer'))
252 ->willReturnOnConsecutiveCalls(10, 200);
254 $database->method(
'query')
256 DELETE FROM il_cert_template 260 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
261 ->disableOriginalConstructor()
264 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
268 $repository->deleteTemplate(10, 200);
273 $database = $this->getMockBuilder(
'ilDBInterface')
274 ->disableOriginalConstructor()
277 $logger = $this->getMockBuilder(
'ilLogger')
278 ->disableOriginalConstructor()
281 $database->method(
'quote')
282 ->withConsecutive(array(10,
'integer'), array(30,
'integer'))
283 ->willReturnOnConsecutiveCalls(10, 30);
285 $database->method(
'fetchAssoc')->willReturnOnConsecutiveCalls(
290 'certificate_content' =>
'<xml>Some Content</xml>',
291 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
292 'template_values' =>
'[]',
294 'ilias_version' =>
'v5.4.0',
295 'created_timestamp' => 123456789,
296 'currently_active' =>
true,
297 'background_image_path' =>
'/some/where/background.jpg',
298 'thumbnail_image_path' =>
'some/path/test.svg' 304 'certificate_content' =>
'<xml>Some Other Content</xml>',
305 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
306 'template_values' =>
'[]',
308 'ilias_version' =>
'v5.3.0',
309 'created_timestamp' => 123456789,
310 'currently_active' =>
false,
311 'background_image_path' =>
'/some/where/else/background.jpg',
312 'thumbnail_image_path' =>
'some/path/test.svg' 316 $database->method(
'query')
318 array($this->anything()),
319 array(
'UPDATE il_cert_template 320 SET currently_active = 1 324 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
325 ->disableOriginalConstructor()
328 $objectDataCache->method(
'lookUpType')->willReturn(
'crs');
332 $template = $repository->activatePreviousCertificate(10, 200);
334 $this->assertEquals(30, $template->getId());
339 $database = $this->getMockBuilder(
'ilDBInterface')
340 ->disableOriginalConstructor()
343 $logger = $this->getMockBuilder(
'ilLogger')
344 ->disableOriginalConstructor()
347 $database->method(
'quote')
351 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
352 ->disableOriginalConstructor()
355 $database->method(
'fetchAssoc')->willReturnOnConsecutiveCalls(
360 'certificate_content' =>
'<xml>Some Content</xml>',
361 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
362 'template_values' =>
'[]',
364 'ilias_version' =>
'v5.4.0',
365 'created_timestamp' => 123456789,
366 'currently_active' =>
true,
367 'background_image_path' =>
'/some/where/background.jpg',
368 'thumbnail_image_path' =>
'/some/where/thumbnail.svg' 374 'certificate_content' =>
'<xml>Some Other Content</xml>',
375 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
376 'template_values' =>
'[]',
378 'ilias_version' =>
'v5.3.0',
379 'created_timestamp' => 123456789,
380 'currently_active' =>
false,
381 'background_image_path' =>
'/some/where/else/background.jpg',
382 'thumbnail_image_path' =>
'/some/where/thumbnail.svg' 388 $templates = $repository->fetchActiveTemplatesByType(
'crs');
390 $this->assertEquals(10, $templates[0]->getObjId());
391 $this->assertEquals(30, $templates[1]->getObjId());
399 $this->expectException(\ilException::class);
401 $database = $this->getMockBuilder(
'ilDBInterface')
402 ->disableOriginalConstructor()
405 $logger = $this->getMockBuilder(
'ilLogger')
406 ->disableOriginalConstructor()
409 $database->method(
'quote')
410 ->with(10,
'integer')
413 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
414 ->disableOriginalConstructor()
417 $database->method(
'fetchAssoc')
418 ->willReturn(array());
420 $database->method(
'fetchAssoc')
421 ->willReturn(array());
425 $repository->fetchFirstCreatedTemplate(10);
432 $database = $this->getMockBuilder(
'ilDBInterface')
433 ->disableOriginalConstructor()
436 $logger = $this->getMockBuilder(
'ilLogger')
437 ->disableOriginalConstructor()
440 $database->method(
'quote')
441 ->with(10,
'integer')
444 $objectDataCache = $this->getMockBuilder(
'ilObjectDataCache')
445 ->disableOriginalConstructor()
448 $database->method(
'fetchAssoc')
449 ->willReturn(array());
451 $database->method(
'fetchAssoc')->willReturn(
456 'certificate_content' =>
'<xml>Some Content</xml>',
457 'certificate_hash' => md5(
'<xml>Some Content</xml>'),
458 'template_values' =>
'[]',
460 'ilias_version' =>
'v5.4.0',
461 'created_timestamp' => 123456789,
462 'currently_active' =>
true,
463 'background_image_path' =>
'/some/where/background.jpg' 469 $firstTemplate = $repository->fetchFirstCreatedTemplate(10);
471 $this->assertEquals(1, $firstTemplate->getId());
testFetchPreviousCertificate()
testActivatePreviousCertificate()
testFetchAllObjectIdsByType()
testDeleteTemplateFromDatabase()
Class ilCertificateBaseTestCase.
testFetchFirstCreatedTemplateFailsBecauseNothingWasSaved()
testFetchCertificateTemplatesByObjId()
fetchFirstCreateTemplate()
testFetchCurrentlyActiveCertificate()
testCertificateWillBeSavedToTheDatabase()