‪TYPO3CMS  ‪main
TypoScriptServiceTest.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 PHPUnit\Framework\Attributes\Test;
24 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
25 
26 final class ‪TypoScriptServiceTest extends UnitTestCase
27 {
28  #[Test]
30  {
31  $mockTypoScriptService = $this->getAccessibleMock(TypoScriptService::class, [
32  'getTypoScriptFrontendController',
33  ], [], '', false);
34  $mockContentObjectRenderer = $this->createMock(ContentObjectRenderer::class);
35  $fakeTypoScriptFrontendController = $this->createMock(TypoScriptFrontendController::class);
36  $fakeTypoScriptFrontendController->cObj = $mockContentObjectRenderer;
37  $mockContentObjectRenderer
38  ->method('cObjGetSingle')
39  ->with('TEXT', ['value' => 'rambo'])
40  ->willReturn('rambo');
41  $mockTypoScriptService
42  ->method('getTypoScriptFrontendController')
43  ->willReturn($fakeTypoScriptFrontendController);
44  $input = [
45  'key.' => [
46  'john' => 'TEXT',
47  'john.' => [
48  'value' => 'rambo',
49  ],
50  ],
51  ];
52  $expected = [
53  'key' => [
54  'john' => 'rambo',
55  ],
56  ];
57 
58  self::assertSame($expected, $mockTypoScriptService->_call('resolveTypoScriptConfiguration', $input));
59  }
60 }
‪TYPO3\CMS\Form\Tests\Unit\Mvc\Configuration
Definition: ConfigurationManagerTest.php:18
‪TYPO3\CMS\Form\Tests\Unit\Mvc\Configuration\TypoScriptServiceTest\resolveTypoScriptConfigurationReturnsResolvedConfiguration
‪resolveTypoScriptConfigurationReturnsResolvedConfiguration()
Definition: TypoScriptServiceTest.php:29
‪TYPO3\CMS\Form\Mvc\Configuration\TypoScriptService
Definition: TypoScriptService.php:29
‪TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController
Definition: TypoScriptFrontendController.php:58
‪TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer
Definition: ContentObjectRenderer.php:102
‪TYPO3\CMS\Form\Tests\Unit\Mvc\Configuration\TypoScriptServiceTest
Definition: TypoScriptServiceTest.php:27