‪TYPO3CMS  11.5
DatabaseDefaultLanguagePageRowTest.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\MockObject\MockObject;
22 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
23 
27 class ‪DatabaseDefaultLanguagePageRowTest extends UnitTestCase
28 {
32  protected MockObject ‪$subject;
33 
34  protected function ‪setUp(): void
35  {
36  parent::setUp();
37  ‪$GLOBALS['TCA']['pages']['ctrl']['transOrigPointerField'] = 'l10n_parent';
38  $this->subject = $this->getMockBuilder(DatabaseDefaultLanguagePageRow::class)
39  ->onlyMethods(['getDatabaseRow'])
40  ->getMock();
41  }
42 
47  {
48  $input = [
49  'tableName' => 'tx_doandroidsdreamofelectricsheep',
50  'databaseRow' => [
51  'uid' => 23,
52  'l10n_parent' => 13,
53  'sys_language_uid' => 23,
54  ],
55  ];
56  $result = $this->subject->addData($input);
57 
58  self::assertArrayNotHasKey('defaultLanguagePageRow', $result);
59  }
60 
65  {
66  $input = [
67  'tableName' => 'pages',
68  'databaseRow' => [
69  'uid' => 23,
70  'l10n_parent' => 0,
71  'sys_language_uid' => 0,
72  ],
73  ];
74  $result = $this->subject->addData($input);
75  self::assertSame($input, $result);
76  }
77 
82  {
83  $input = [
84  'tableName' => 'pages',
85  'databaseRow' => [
86  'uid' => 23,
87  'pid' => 1,
88  'l10n_parent' => 13,
89  'sys_language_uid' => 8,
90  ],
91  ];
92 
93  $defaultLanguagePageRow = [
94  'uid' => 13,
95  'pid' => 1,
96  'sys_language_uid' => 0,
97  'l10n_parent' => 0,
98  ];
99 
100  $this->subject->expects(self::once())
101  ->method('getDatabaseRow')
102  ->with($input['tableName'], 13)
103  ->willReturn($defaultLanguagePageRow);
104 
105  $result = $this->subject->addData($input);
106  self::assertEquals($defaultLanguagePageRow, $result['defaultLanguagePageRow']);
107  }
108 }
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest\setUp
‪setUp()
Definition: DatabaseDefaultLanguagePageRowTest.php:34
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest
Definition: DatabaseDefaultLanguagePageRowTest.php:28
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest\addDataDoesApplyToAPagesTableButNoChangeForDefaultLanguage
‪addDataDoesApplyToAPagesTableButNoChangeForDefaultLanguage()
Definition: DatabaseDefaultLanguagePageRowTest.php:64
‪TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseDefaultLanguagePageRow
Definition: DatabaseDefaultLanguagePageRow.php:26
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest\$subject
‪MockObject $subject
Definition: DatabaseDefaultLanguagePageRowTest.php:32
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest\addDataDoesNotApplyToAnyNonPagesTable
‪addDataDoesNotApplyToAnyNonPagesTable()
Definition: DatabaseDefaultLanguagePageRowTest.php:46
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider\DatabaseDefaultLanguagePageRowTest\addDataDoesApplyToATranslatedPagesTable
‪addDataDoesApplyToATranslatedPagesTable()
Definition: DatabaseDefaultLanguagePageRowTest.php:81
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:25
‪TYPO3\CMS\Backend\Tests\Unit\Form\FormDataProvider
Definition: DatabaseDefaultLanguagePageRowTest.php:18