‪TYPO3CMS  ‪main
SiteConfigurationOverridesTest.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;
22 use TYPO3\TestingFramework\Core\Functional\FunctionalTestCase;
23 
24 final class ‪SiteConfigurationOverridesTest extends FunctionalTestCase
25 {
26  protected bool ‪$initializeDatabase = false;
27 
28  protected array ‪$subject;
29 
30  protected array ‪$testExtensionsToLoad = [
31  'typo3/sysext/backend/Tests/Functional/SiteConfiguration/Fixtures/Extensions/test_configoverride_first',
32  'typo3/sysext/backend/Tests/Functional/SiteConfiguration/Fixtures/Extensions/test_configoverride_second',
33  ];
34 
38  protected function ‪setUp(): void
39  {
40  parent::setUp();
41 
42  $this->subject = (new ‪SiteTcaConfiguration())->getTca();
43  }
44 
45  #[Test]
46  public function ‪allOverridesLoaded(): void
47  {
48  $columnsConfiguration = $this->subject['site']['columns'];
49 
50  self::assertArrayHasKey('tx_a_a', $columnsConfiguration);
51  self::assertArrayHasKey('tx_b_a', $columnsConfiguration);
52  }
53 
54  #[Test]
55  public function ‪overrideOnlyLoadedOnce(): void
56  {
57  $showitemConfiguration = $this->subject['site']['types']['0']['showitem'];
58 
59  self::assertSame(1, mb_substr_count($showitemConfiguration, 'tx_a_a'));
60  self::assertSame(1, mb_substr_count($showitemConfiguration, 'tx_b_a'));
61  }
62 
63  #[Test]
64  public function ‪finderUsesCorrectOrder(): void
65  {
66  $columnsConfiguration = $this->subject['site']['columns'];
67 
68  self::assertSame('Awesome description by extension b', $columnsConfiguration['tx_a_a']['description']);
69  }
70 }
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\finderUsesCorrectOrder
‪finderUsesCorrectOrder()
Definition: SiteConfigurationOverridesTest.php:64
‪TYPO3\CMS\Backend\Configuration\SiteTcaConfiguration
Definition: SiteTcaConfiguration.php:34
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\overrideOnlyLoadedOnce
‪overrideOnlyLoadedOnce()
Definition: SiteConfigurationOverridesTest.php:55
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\$testExtensionsToLoad
‪array $testExtensionsToLoad
Definition: SiteConfigurationOverridesTest.php:30
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration
Definition: SiteConfigurationOverridesTest.php:18
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\setUp
‪setUp()
Definition: SiteConfigurationOverridesTest.php:38
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest
Definition: SiteConfigurationOverridesTest.php:25
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\$subject
‪array $subject
Definition: SiteConfigurationOverridesTest.php:28
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\allOverridesLoaded
‪allOverridesLoaded()
Definition: SiteConfigurationOverridesTest.php:46
‪TYPO3\CMS\Backend\Tests\Functional\SiteConfiguration\SiteConfigurationOverridesTest\$initializeDatabase
‪bool $initializeDatabase
Definition: SiteConfigurationOverridesTest.php:26