‪TYPO3CMS  11.5
Typo3QuerySettingsTest.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 Prophecy\PhpUnit\ProphecyTrait;
25 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
26 
30 class ‪Typo3QuerySettingsTest extends UnitTestCase
31 {
32  use ProphecyTrait;
33 
34  protected ?‪Typo3QuerySettings ‪$subject = null;
35 
39  protected function ‪setUp(): void
40  {
41  parent::setUp();
42  $this->subject = new ‪Typo3QuerySettings(
43  new ‪Context(),
44  $this->prophesize(ConfigurationManagerInterface::class)->reveal()
45  );
46  }
47 
48  public function ‪booleanValueProvider(): array
49  {
50  return [
51  'TRUE setting' => [true],
52  'FALSE setting' => [false],
53  ];
54  }
55 
56  public function ‪arrayValueProvider(): array
57  {
58  return [
59  'empty array' => [[]],
60  'two elements associative' => [
61  [
62  'one' => '42',
63  21 => 12,
64  ],
65  ],
66  'three elements' => [
67  [
68  1,
69  'dummy',
70  [],
71  ],
72  ],
73  ];
74  }
75 
81  public function ‪setRespectStoragePageSetsRespectStoragePageCorrectly(bool $input): void
82  {
83  $this->subject->setRespectStoragePage($input);
84  self::assertEquals($input, $this->subject->getRespectStoragePage());
85  }
86 
90  public function ‪setRespectStoragePageAllowsChaining(): void
91  {
92  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setRespectStoragePage(true));
93  }
94 
100  public function ‪setStoragePageIdsSetsStoragePageIdsCorrectly(array $input): void
101  {
102  $this->subject->setStoragePageIds($input);
103  self::assertEquals($input, $this->subject->getStoragePageIds());
104  }
105 
109  public function ‪setStoragePageIdsAllowsChaining(): void
110  {
111  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setStoragePageIds([1, 2, 3]));
112  }
113 
119  public function ‪setRespectSysLanguageSetsRespectSysLanguageCorrectly(bool $input): void
120  {
121  $this->subject->setRespectSysLanguage($input);
122  self::assertEquals($input, $this->subject->getRespectSysLanguage());
123  }
124 
128  public function ‪setRespectSysLanguageAllowsChaining(): void
129  {
130  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setRespectSysLanguage(true));
131  }
132 
136  public function ‪setLanguageUidAllowsChaining(): void
137  {
138  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setLanguageUid(42));
139  }
140 
146  public function ‪setIgnoreEnableFieldsSetsIgnoreEnableFieldsCorrectly(bool $input): void
147  {
148  $this->subject->setIgnoreEnableFields($input);
149  self::assertEquals($input, $this->subject->getIgnoreEnableFields());
150  }
151 
155  public function ‪setIgnoreEnableFieldsAllowsChaining(): void
156  {
157  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setIgnoreEnableFields(true));
158  }
159 
166  {
167  $this->subject->setEnableFieldsToBeIgnored($input);
168  self::assertEquals($input, $this->subject->getEnableFieldsToBeIgnored());
169  }
170 
174  public function ‪setEnableFieldsToBeIgnoredAllowsChaining(): void
175  {
176  self::assertInstanceOf(
177  QuerySettingsInterface::class,
178  $this->subject->setEnableFieldsToBeIgnored(['starttime', 'endtime'])
179  );
180  }
181 
187  public function ‪setIncludeDeletedSetsIncludeDeletedCorrectly(bool $input): void
188  {
189  $this->subject->setIncludeDeleted($input);
190  self::assertEquals($input, $this->subject->getIncludeDeleted());
191  }
192 
196  public function ‪setIncludeDeletedAllowsChaining(): void
197  {
198  self::assertInstanceOf(QuerySettingsInterface::class, $this->subject->setIncludeDeleted(true));
199  }
200 }
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setEnableFieldsToBeIgnoredSetsEnableFieldsToBeIgnoredCorrectly
‪setEnableFieldsToBeIgnoredSetsEnableFieldsToBeIgnoredCorrectly(array $input)
Definition: Typo3QuerySettingsTest.php:164
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setUp
‪setUp()
Definition: Typo3QuerySettingsTest.php:38
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setIgnoreEnableFieldsSetsIgnoreEnableFieldsCorrectly
‪setIgnoreEnableFieldsSetsIgnoreEnableFieldsCorrectly(bool $input)
Definition: Typo3QuerySettingsTest.php:145
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setIgnoreEnableFieldsAllowsChaining
‪setIgnoreEnableFieldsAllowsChaining()
Definition: Typo3QuerySettingsTest.php:154
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setIncludeDeletedSetsIncludeDeletedCorrectly
‪setIncludeDeletedSetsIncludeDeletedCorrectly(bool $input)
Definition: Typo3QuerySettingsTest.php:186
‪TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface
Definition: ConfigurationManagerInterface.php:28
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setRespectStoragePageAllowsChaining
‪setRespectStoragePageAllowsChaining()
Definition: Typo3QuerySettingsTest.php:89
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\booleanValueProvider
‪booleanValueProvider()
Definition: Typo3QuerySettingsTest.php:47
‪TYPO3\CMS\Core\Context\Context
Definition: Context.php:53
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setStoragePageIdsAllowsChaining
‪setStoragePageIdsAllowsChaining()
Definition: Typo3QuerySettingsTest.php:108
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest
Definition: Typo3QuerySettingsTest.php:31
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setLanguageUidAllowsChaining
‪setLanguageUidAllowsChaining()
Definition: Typo3QuerySettingsTest.php:135
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic
Definition: BackendTest.php:18
‪TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface
Definition: QuerySettingsInterface.php:22
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setEnableFieldsToBeIgnoredAllowsChaining
‪setEnableFieldsToBeIgnoredAllowsChaining()
Definition: Typo3QuerySettingsTest.php:173
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setIncludeDeletedAllowsChaining
‪setIncludeDeletedAllowsChaining()
Definition: Typo3QuerySettingsTest.php:195
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setRespectStoragePageSetsRespectStoragePageCorrectly
‪setRespectStoragePageSetsRespectStoragePageCorrectly(bool $input)
Definition: Typo3QuerySettingsTest.php:80
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setRespectSysLanguageSetsRespectSysLanguageCorrectly
‪setRespectSysLanguageSetsRespectSysLanguageCorrectly(bool $input)
Definition: Typo3QuerySettingsTest.php:118
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setRespectSysLanguageAllowsChaining
‪setRespectSysLanguageAllowsChaining()
Definition: Typo3QuerySettingsTest.php:127
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\$subject
‪Typo3QuerySettings $subject
Definition: Typo3QuerySettingsTest.php:33
‪TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings
Definition: Typo3QuerySettings.php:29
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\arrayValueProvider
‪arrayValueProvider()
Definition: Typo3QuerySettingsTest.php:55
‪TYPO3\CMS\Extbase\Tests\Unit\Persistence\Generic\Typo3QuerySettingsTest\setStoragePageIdsSetsStoragePageIdsCorrectly
‪setStoragePageIdsSetsStoragePageIdsCorrectly(array $input)
Definition: Typo3QuerySettingsTest.php:99