ILIAS  release_10 Revision v10.1-43-ga1241a92c2f
VirusScannerFactoryTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 namespace ILIAS\VirusScanner\tests;
22 
23 use ILIAS;
24 use ilLanguage;
26 use ilLoggerFactory;
27 use ilErrorHandling;
31 use ilLogger;
33 
34 require_once __DIR__ . '/bootstrap.php';
35 
41 {
42  public static ilLogger $logger;
43 
44  protected function setUp(): void
45  {
46  parent::setUp();
47 
48  if (!defined('IL_VIRUS_SCAN_COMMAND')) {
49  define('IL_VIRUS_SCAN_COMMAND', 'phpunitscan');
50  }
51 
52  if (!defined('IL_VIRUS_CLEAN_COMMAND')) {
53  define('IL_VIRUS_CLEAN_COMMAND', 'phpunitclean');
54  }
55 
56  $logger = $this->getMockBuilder(ilLogger::class)->disableOriginalConstructor()->getMock();
57  self::$logger = $logger;
58 
59  $logger_factory = new class () extends ilLoggerFactory {
60  public function __construct()
61  {
62  }
63 
64  public static function getRootLogger(): ilLogger
65  {
67  }
68 
69  public function getComponentLogger(string $a_component_id): ilLogger
70  {
72  }
73  };
74 
75  $this->setGlobalVariable('ilias', $this->getMockBuilder(ILIAS::class)->disableOriginalConstructor()->getMock());
76  $this->setGlobalVariable(
77  'lng',
78  $this->getMockBuilder(ilLanguage::class)->disableOriginalConstructor()->getMock()
79  );
80 
81  $this->setGlobalVariable('ilLoggerFactory', $logger_factory);
82 
83  $this->setGlobalVariable(
84  'ilErr',
85  $this->getMockBuilder(ilErrorHandling::class)->disableOriginalConstructor()->getMock()
86  );
87  }
88 
90  {
91  define('IL_VIRUS_SCANNER', 'Sophos');
92 
93  self::assertInstanceOf(ilVirusScannerSophos::class, ilVirusScannerFactory::_getInstance());
94  }
95 
97  {
98  define('IL_VIRUS_SCANNER', 'AntiVir');
99 
100  self::assertInstanceOf(ilVirusScannerAntiVir::class, ilVirusScannerFactory::_getInstance());
101  }
102 
104  {
105  define('IL_VIRUS_SCANNER', 'ClamAV');
106 
107  self::assertInstanceOf(ilVirusScannerClamAV::class, ilVirusScannerFactory::_getInstance());
108  }
109 
111  {
112  define('IL_VIRUS_SCANNER', 'icap');
113  define('IL_ICAP_CLIENT', 'phpunit');
114 
115  self::assertInstanceOf(ilVirusScannerICapClient::class, ilVirusScannerFactory::_getInstance());
116  }
117 }
Interface Observer Contains several chained tasks and infos about them.
__construct()
Constructor setup ILIAS global object public.
Definition: class.ilias.php:76