ILIAS  release_8 Revision v8.24
ilDidacticTemplatePatternTest.php
Go to the documentation of this file.
1<?php
2
3declare(strict_types=1);
4
5use PHPUnit\Framework\TestCase;
7
13class ilDidacticTemplatePatternTest extends TestCase
14{
15 protected Container $dic;
16
17 protected function setUp(): void
18 {
20 parent::setUp();
21 }
22
23 public function testConstruct(): void
24 {
25 $include_pattern = new ilDidacticTemplateIncludeFilterPattern();
26 $this->assertInstanceOf(ilDidacticTemplateIncludeFilterPattern::class, $include_pattern);
27
28 $exclude_pattern = new ilDidacticTemplateExcludeFilterPattern();
29 $this->assertInstanceOf(ilDidacticTemplateExcludeFilterPattern::class, $exclude_pattern);
30 }
31
32 public function testMatches(): void
33 {
34 $include_pattern = new ilDidacticTemplateIncludeFilterPattern();
35 $include_pattern->setPatternSubType(ilDidacticTemplateFilterPattern::PATTERN_SUBTYPE_REGEX);
36 $include_pattern->setPattern('^il_crs_admin_[0-9]+$');
37 $this->assertTrue($include_pattern->valid('il_crs_admin_123'));
38
39 $exclude_pattern = new ilDidacticTemplateExcludeFilterPattern();
40 $exclude_pattern->setPatternSubType(ilDidacticTemplateFilterPattern::PATTERN_SUBTYPE_REGEX);
41 $exclude_pattern->setPattern('il_crs_admin_[0-9]+');
42 $this->assertTrue($exclude_pattern->valid('il_grp_admin'));
43 }
44
45 protected function setGlobalVariable(string $name, $value): void
46 {
47 global $DIC;
48
49 $GLOBALS[$name] = $value;
50 unset($DIC[$name]);
51 $DIC[$name] = static function (\ILIAS\DI\Container $c) use ($value) {
52 return $value;
53 };
54 }
55
56 protected function initPatternDependencies(): void
57 {
58 $this->dic = new Container();
59 $GLOBALS['DIC'] = $this->dic;
60
61 $this->setGlobalVariable('ilDB', $this->createMock(ilDBInterface::class));
62
63 $logger = $this->getMockBuilder(ilLogger::class)
64 ->disableOriginalConstructor()
65 ->getMock();
66
67 $logger_factory = $this->getMockBuilder(ilLoggerFactory::class)
68 ->disableOriginalConstructor()
69 ->onlyMethods(['getComponentLogger'])
70 ->getMock();
71 $logger_factory->method('getComponentLogger')->willReturn($logger);
72 $this->setGlobalVariable('ilLoggerFactory', $logger_factory);
73 }
74}
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
Customizing of pimple-DIC for ILIAS.
Definition: Container.php:32
Implementation of an include filter pattern for didactic template actions.
Implementation of an include filter pattern for didactic template actions.
Unit tests for class ilDidacticTemplate.
$c
Definition: cli.php:38
global $DIC
Definition: feed.php:28
if($format !==null) $name
Definition: metadata.php:247