‪TYPO3CMS  10.4
ProcessingRuleTest.php
Go to the documentation of this file.
1 <?php
2 
3 /*
4  * This file is part of the TYPO3 CMS project.
5  *
6  * It is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU General Public License, either version 2
8  * of the License, or any later version.
9  *
10  * For the full copyright and license information, please read the
11  * LICENSE.txt file that was distributed with this source code.
12  *
13  * The TYPO3 project - inspiring people to share!
14  */
15 
17 
25 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
26 
30 class ‪ProcessingRuleTest extends UnitTestCase
31 {
35  protected ‪$resetSingletonInstances = true;
36 
37  protected function ‪setUp(): void
38  {
39  parent::setUp();
40  $objectManagerProphecy = $this->prophesize(ObjectManager::class);
41  $objectManagerProphecy->get(Result::class)->willReturn(new ‪Result());
42  GeneralUtility::setSingletonInstance(ObjectManager::class, $objectManagerProphecy->reveal());
43  }
44 
48  public function ‪addValidatorAddsValidator(): void
49  {
50  $mockProcessingRule = new ‪ProcessingRule();
51  $mockProcessingRule->injectConjunctionValidator(new ‪ConjunctionValidator([]));
52  $mockProcessingRule->addValidator(new ‪TestValidator());
53  $validators = $mockProcessingRule->getValidators();
54  $validators->rewind();
55  self::assertInstanceOf(AbstractValidator::class, $validators->current());
56  }
57 
62  {
63  $processingRule = new ProcessingRule();
64  $processingRule->injectConjunctionValidator(new ConjunctionValidator([]));
65 
66  $input = 'someValue';
67  self::assertSame($input, $processingRule->process($input));
68  }
69 
74  {
75  $processingRule = new ProcessingRule();
76  $processingRule->injectConjunctionValidator(new ConjunctionValidator([]));
77  $processingRule->addValidator(new TestValidator());
78 
79  $input = 'addError';
80  $processingRule->process($input);
81 
82  self::assertTrue($processingRule->getProcessingMessages()->hasErrors());
83  }
84 }
‪TYPO3\CMS\Form\Tests\Unit\Mvc\Validation\Fixtures\TestValidator
Definition: TestValidator.php:24
‪TYPO3\CMS\Extbase\Validation\Validator\AbstractValidator
Definition: AbstractValidator.php:27
‪TYPO3\CMS\Extbase\Validation\Validator\ConjunctionValidator
Definition: ConjunctionValidator.php:24
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest\$resetSingletonInstances
‪bool $resetSingletonInstances
Definition: ProcessingRuleTest.php:34
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest\processNoPropertyMappingAndHasErrorsIfValidatorContainsErrors
‪processNoPropertyMappingAndHasErrorsIfValidatorContainsErrors()
Definition: ProcessingRuleTest.php:72
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest
Definition: ProcessingRuleTest.php:31
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest\addValidatorAddsValidator
‪addValidatorAddsValidator()
Definition: ProcessingRuleTest.php:47
‪TYPO3\CMS\Form\Tests\Unit\Mvc
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest\processNoPropertyMappingReturnsNotModifiedValue
‪processNoPropertyMappingReturnsNotModifiedValue()
Definition: ProcessingRuleTest.php:60
‪TYPO3\CMS\Extbase\Error\Result
Definition: Result.php:24
‪TYPO3\CMS\Form\Tests\Unit\Mvc\ProcessingRuleTest\setUp
‪setUp()
Definition: ProcessingRuleTest.php:36
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:46
‪TYPO3\CMS\Extbase\Object\ObjectManager
Definition: ObjectManager.php:28
‪TYPO3\CMS\Form\Mvc\ProcessingRule
Definition: ProcessingRule.php:36