ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
VirusScannerFactoryTest.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
23use ILIAS;
24use ilLanguage;
31use ilLogger;
33
34require_once __DIR__ . '/bootstrap.php';
35
36#[\PHPUnit\Framework\Attributes\PreserveGlobalState(false)]
37#[\PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses]
39{
40 public static ilLogger $logger;
41
42 protected function setUp(): void
43 {
44 parent::setUp();
45
46 if (!defined('IL_VIRUS_SCAN_COMMAND')) {
47 define('IL_VIRUS_SCAN_COMMAND', 'phpunitscan');
48 }
49
50 if (!defined('IL_VIRUS_CLEAN_COMMAND')) {
51 define('IL_VIRUS_CLEAN_COMMAND', 'phpunitclean');
52 }
53
54 $logger = $this->getMockBuilder(ilLogger::class)->disableOriginalConstructor()->getMock();
55 self::$logger = $logger;
56
57 $logger_factory = new class () extends ilLoggerFactory {
58 public function __construct()
59 {
60 }
61
62 public static function getRootLogger(): ilLogger
63 {
65 }
66
67 public function getComponentLogger(string $a_component_id): ilLogger
68 {
70 }
71 };
72
73 $this->setGlobalVariable('ilias', $this->getMockBuilder(ILIAS::class)->disableOriginalConstructor()->getMock());
74 $this->setGlobalVariable(
75 'lng',
76 $this->getMockBuilder(ilLanguage::class)->disableOriginalConstructor()->getMock()
77 );
78
79 $this->setGlobalVariable('ilLoggerFactory', $logger_factory);
80
81 $this->setGlobalVariable(
82 'ilErr',
83 $this->getMockBuilder(ilErrorHandling::class)->disableOriginalConstructor()->getMock()
84 );
85 }
86
88 {
89 define('IL_VIRUS_SCANNER', 'Sophos');
90
91 self::assertInstanceOf(ilVirusScannerSophos::class, ilVirusScannerFactory::_getInstance());
92 }
93
95 {
96 define('IL_VIRUS_SCANNER', 'AntiVir');
97
98 self::assertInstanceOf(ilVirusScannerAntiVir::class, ilVirusScannerFactory::_getInstance());
99 }
100
102 {
103 define('IL_VIRUS_SCANNER', 'ClamAV');
104
105 self::assertInstanceOf(ilVirusScannerClamAV::class, ilVirusScannerFactory::_getInstance());
106 }
107
109 {
110 define('IL_VIRUS_SCANNER', 'icap');
111 define('IL_ICAP_CLIENT', 'phpunit');
112
113 self::assertInstanceOf(ilVirusScannerICapClient::class, ilVirusScannerFactory::_getInstance());
114 }
115}
__construct()
Constructor setup ILIAS global object @access public.
Definition: class.ilias.php:76
Error Handling & global info handling.
language handling
Component logger with individual log levels by component id.
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.