[!!!][TASK] Extract testing framework for TYPO3
[Packages/TYPO3.CMS.git] / typo3 / sysext / extbase / Tests / Unit / Hook / DataHandler / CheckFlexFormValueTest.php
1 <?php
2 namespace TYPO3\CMS\Extbase\Tests\Unit\Hook\DataHandler;
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 */
16
17 /**
18 * Test case
19 */
20 class CheckFlexFormValueTest extends \TYPO3\CMS\Components\TestingFramework\Core\UnitTestCase
21 {
22 /**
23 * @test
24 */
25 public function checkFlexFormValueBeforeMergeRemovesSwitchableControllerActions()
26 {
27 $currentFlexFormDataArray = [
28 'foo' => [
29 'bar' => 'baz',
30 'qux' => [
31 'quux' => 'quuux',
32 'switchableControllerActions' => []
33 ],
34 'switchableControllerActions' => []
35 ],
36 'switchableControllerActions' => []
37 ];
38
39 $expectedFlexFormDataArray = [
40 'foo' => [
41 'bar' => 'baz',
42 'qux' => [
43 'quux' => 'quuux',
44 ],
45 ],
46 ];
47
48 /** @var \TYPO3\CMS\Core\DataHandling\DataHandler $dataHandler */
49 $dataHandler = $this->createMock(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
50
51 $newFlexFormDataArray = [];
52 /** @var \TYPO3\CMS\Extbase\Hook\DataHandler\CheckFlexFormValue $checkFlexFormValue */
53 $checkFlexFormValue = $this->getMockBuilder(\TYPO3\CMS\Extbase\Hook\DataHandler\CheckFlexFormValue::class)
54 ->setMethods(['dummy'])
55 ->getMock();
56 $checkFlexFormValue->checkFlexFormValue_beforeMerge($dataHandler, $currentFlexFormDataArray, $newFlexFormDataArray);
57
58 $this->assertSame($expectedFlexFormDataArray, $currentFlexFormDataArray);
59 }
60 }