TYPO3 CMS  TYPO3_8-7
AbstractProcessorTest.php
Go to the documentation of this file.
1 <?php
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
19 
23 class AbstractProcessorTest extends \TYPO3\TestingFramework\Core\Unit\UnitTestCase
24 {
29  {
30  $this->expectException(InvalidLogProcessorConfigurationException::class);
31  $this->expectExceptionCode(1321696151);
32 
33  $invalidConfiguration = [
34  'foo' => 'bar'
35  ];
36  GeneralUtility::makeInstance(ProcessorFixture::class, $invalidConfiguration);
37  }
38 
42  public function loggerExecutesProcessors()
43  {
44  $logger = new \TYPO3\CMS\Core\Log\Logger('test.core.log');
45  $writer = new \TYPO3\CMS\Core\Log\Writer\NullWriter();
47  $logRecord = new \TYPO3\CMS\Core\Log\LogRecord('dummy', $level, 'message');
48  $processor = $this->getMockBuilder(\TYPO3\CMS\Core\Log\Processor\ProcessorInterface::class)
49  ->setMethods(['processLogRecord'])
50  ->getMock();
51  $processor->expects($this->once())->method('processLogRecord')->willReturn($logRecord);
52 
53  $logger->addWriter($level, $writer);
54  $logger->addProcessor($level, $processor);
55  $logger->warning('test');
56  }
57 }
static makeInstance($className,... $constructorArguments)