‪TYPO3CMS  11.5
ProcessorRegistryTest.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
20 use Prophecy\PhpUnit\ProphecyTrait;
24 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
25 
29 class ‪ProcessorRegistryTest extends UnitTestCase
30 {
31  use ProphecyTrait;
32 
33  protected ‪$resetSingletonInstances = true;
34 
38  public function ‪getProcessorWhenOnlyOneIsRegistered(): void
39  {
40  ‪$GLOBALS['TYPO3_CONF_VARS']['SYS']['fal']['processors'] = [
41  [
42  'className' => LocalImageProcessor::class,
43  ],
44  ];
45  $subject = new ‪ProcessorRegistry();
46  $taskMock = $this->prophesize(AbstractTask::class);
47  $taskMock->getType()->willReturn('Image');
48  $taskMock->getName()->willReturn('CropScaleMask');
49 
50  $processor = $subject->getProcessorByTask($taskMock->reveal());
51 
52  self::assertInstanceOf(LocalImageProcessor::class, $processor);
53  }
54 
58  public function ‪getProcessorWhenNoneIsRegistered(): void
59  {
60  $this->expectExceptionCode(1560876294);
61 
62  $subject = new ‪ProcessorRegistry();
63  $taskMock = $this->prophesize(AbstractTask::class)->reveal();
64  $subject->getProcessorByTask($taskMock);
65  }
66 
71  {
72  ‪$GLOBALS['TYPO3_CONF_VARS']['SYS']['fal']['processors'] = [
73  'LocalImageProcessor' => [
74  'className' => LocalImageProcessor::class,
75  ],
76  'AnotherLocalImageProcessor' => [
77  'className' => LocalImageProcessor::class,
78  'after' => 'LocalImageProcessor',
79  ],
80  ];
81  $subject = new ProcessorRegistry();
82  $taskMock = $this->prophesize(AbstractTask::class);
83  $taskMock->getType()->willReturn('Image');
84  $taskMock->getName()->willReturn('CropScaleMask');
85 
86  $processor = $subject->getProcessorByTask($taskMock->reveal());
87 
88  self::assertInstanceOf(LocalImageProcessor::class, $processor);
89  }
90 }
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing\ProcessorRegistryTest\getProcessorWhenNoneIsRegistered
‪getProcessorWhenNoneIsRegistered()
Definition: ProcessorRegistryTest.php:57
‪TYPO3\CMS\Core\Resource\Processing\LocalImageProcessor
Definition: LocalImageProcessor.php:27
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing\ProcessorRegistryTest\$resetSingletonInstances
‪$resetSingletonInstances
Definition: ProcessorRegistryTest.php:32
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing
Definition: LocalPreviewHelperTest.php:18
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing\ProcessorRegistryTest
Definition: ProcessorRegistryTest.php:30
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:25
‪TYPO3\CMS\Core\Resource\Processing\AbstractTask
Definition: AbstractTask.php:31
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing\ProcessorRegistryTest\getProcessorWhenSameProcessorIsRegisteredTwice
‪getProcessorWhenSameProcessorIsRegisteredTwice()
Definition: ProcessorRegistryTest.php:69
‪TYPO3\CMS\Core\Resource\Processing\ProcessorRegistry
Definition: ProcessorRegistry.php:28
‪TYPO3\CMS\Core\Tests\Unit\Resource\Processing\ProcessorRegistryTest\getProcessorWhenOnlyOneIsRegistered
‪getProcessorWhenOnlyOneIsRegistered()
Definition: ProcessorRegistryTest.php:37