‪TYPO3CMS  ‪main
ActionTest.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;
23 use TYPO3\TestingFramework\Core\Functional\Framework\Constraint\RequestSection\DoesNotHaveRecordConstraint;
24 use TYPO3\TestingFramework\Core\Functional\Framework\Constraint\RequestSection\HasRecordConstraint;
25 use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\InternalRequest;
26 use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\InternalRequestContext;
27 use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\ResponseContent;
28 
30 {
31  #[Test]
32  public function ‪verifyCleanReferenceIndex(): void
33  {
34  // The test verifies the imported data set has a clean reference index by the check in tearDown()
35  self::assertTrue(true);
36  }
37 
38  #[Test]
39  public function ‪createContents(): void
40  {
41  parent::createContents();
42  $this->assertCSVDataSet(__DIR__ . '/DataSet/createContents.csv');
43 
44  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
45  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
46  self::assertThat($responseSections, (new HasRecordConstraint())
47  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1', 'Testing #2'));
48  }
49 
50  #[Test]
51  public function ‪createContentForLanguageAll(): void
52  {
53  // Create translated page first
54  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
55  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageIdSecond);
56  parent::createContentForLanguageAll();
57 
58  $this->assertCSVDataSet(__DIR__ . '/DataSet/createContentForLanguageAll.csv');
59 
60  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
61  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
62  self::assertThat($responseSections, (new HasRecordConstraint())
63  ->setTable(self::TABLE_Content)->setField('header')->setValues('Language set to all', '[Translate to Deutsch:] [Translate to Dansk:] Regular Element #1'));
64  }
65 
66  #[Test]
67  public function ‪modifyContent(): void
68  {
69  parent::modifyContent();
70  $this->assertCSVDataSet(__DIR__ . '/DataSet/modifyContent.csv');
71 
72  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
73  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
74  self::assertThat($responseSections, (new HasRecordConstraint())
75  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
76  }
77 
78  #[Test]
79  public function ‪modifyTranslatedContent(): void
80  {
81  // Create translated page first
82  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
83  parent::modifyTranslatedContent();
84  $this->assertCSVDataSet(__DIR__ . '/DataSet/modifyTranslatedContent.csv');
85 
86  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
87  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
88  self::assertThat($responseSections, (new HasRecordConstraint())
89  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing Translation #3'));
90  }
91 
92  #[Test]
93  public function ‪deleteContent(): void
94  {
95  parent::deleteContent();
96  $this->assertCSVDataSet(__DIR__ . '/DataSet/deleteContent.csv');
97 
98  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
99  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
100  self::assertThat($responseSections, (new HasRecordConstraint())
101  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
102  self::assertThat($responseSections, (new DoesNotHaveRecordConstraint())
103  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
104  }
105 
106  #[Test]
108  {
109  // Create translated page first
110  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
111 
112  parent::deleteLocalizedContentAndDeleteContent();
113  $this->assertCSVDataSet(__DIR__ . '/DataSet/deleteLocalizedContentNDeleteContent.csv');
114 
115  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
116  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
117  self::assertThat($responseSections, (new DoesNotHaveRecordConstraint())
118  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #3', '[Translate to Dansk:] Regular Element #3', 'Regular Element #1'));
119  self::assertThat($responseSections, (new HasRecordConstraint())
120  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', 'Regular Element #2'));
121  }
122 
123  #[Test]
124  public function ‪copyContent(): void
125  {
126  parent::copyContent();
127  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyContent.csv');
128 
129  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
130  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
131  self::assertThat($responseSections, (new HasRecordConstraint())
132  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2 (copy 1)'));
133  }
134 
135  #[Test]
136  public function ‪copyContentToLanguage(): void
137  {
138  // Create translated page first
139  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
140  parent::copyContentToLanguage();
141  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyContentToLanguage.csv');
142 
143  // Set up "danish" to not have overlays - "free" mode
145  'test',
146  $this->‪buildSiteConfiguration(1, '/'),
147  [
148  $this->‪buildDefaultLanguageConfiguration('EN', '/'),
149  $this->‪buildLanguageConfiguration('DA', '/da/', [], 'free'),
150  $this->‪buildLanguageConfiguration('DE', '/de/', ['DA', 'EN']),
151  ]
152  );
153 
154  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
155  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
156  self::assertThat($responseSections, (new HasRecordConstraint())
157  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #3', '[Translate to Dansk:] Regular Element #2'));
158  }
159 
160  #[Test]
162  {
163  // Create translated page first
164  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
165  parent::copyContentToLanguageWithLanguageSynchronization();
166  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyContentToLanguageWSynchronization.csv');
167 
168  // Set up "danish" to not have overlays - "free" mode
170  'test',
171  $this->‪buildSiteConfiguration(1, '/'),
172  [
173  $this->‪buildDefaultLanguageConfiguration('EN', '/'),
174  $this->‪buildLanguageConfiguration('DA', '/da/', [], 'free'),
175  $this->‪buildLanguageConfiguration('DE', '/de/', ['DA', 'EN']),
176  ]
177  );
178 
179  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
180  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
181  self::assertThat($responseSections, (new HasRecordConstraint())
182  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #3', '[Translate to Dansk:] Regular Element #2'));
183  }
184 
185  #[Test]
187  {
188  // Create translated page first
189  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
190  parent::copyContentToLanguageWithLocalizationExclude();
191  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyContentToLanguageWExclude.csv');
192 
193  // Set up "danish" to not have overlays - "free" mode
195  'test',
196  $this->‪buildSiteConfiguration(1, '/'),
197  [
198  $this->‪buildDefaultLanguageConfiguration('EN', '/'),
199  $this->‪buildLanguageConfiguration('DA', '/da/', [], 'free'),
200  $this->‪buildLanguageConfiguration('DE', '/de/', ['DA', 'EN']),
201  ]
202  );
203 
204  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
205  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
206  self::assertThat($responseSections, (new HasRecordConstraint())
207  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', '[Translate to Dansk:] Regular Element #3', 'Regular Element #2 (copy 1)'));
208  }
209 
210  #[Test]
212  {
213  // Create translated page first
214  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
215  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageIdSecond);
216  parent::copyContentToLanguageFromNonDefaultLanguage();
217  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyContentToLanguageFromNonDefaultLanguage.csv');
218 
219  // Set up "german" to not have overlays - "free" mode
221  'test',
222  $this->‪buildSiteConfiguration(1, '/'),
223  [
224  $this->‪buildDefaultLanguageConfiguration('EN', '/'),
225  $this->‪buildLanguageConfiguration('DA', '/da/', ['EN']),
226  $this->‪buildLanguageConfiguration('DE', '/de/', [], 'free'),
227  ]
228  );
229 
230  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
231  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
232  self::assertThat($responseSections, (new HasRecordConstraint())
233  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Deutsch:] [Translate to Dansk:] Regular Element #3'));
234  }
235 
236  #[Test]
237  public function ‪copyPasteContent(): void
238  {
239  parent::copyPasteContent();
240  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyPasteContent.csv');
241 
242  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
243  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
244  self::assertThat($responseSections, (new HasRecordConstraint())
245  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
246  }
247 
248  #[Test]
249  public function ‪localizeContent(): void
250  {
251  // Create translated page first
252  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
253  parent::localizeContent();
254  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContent.csv');
255 
256  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
257  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
258  self::assertThat($responseSections, (new HasRecordConstraint())
259  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', '[Translate to Dansk:] Regular Element #2'));
260  }
261 
265  #[Test]
267  {
268  parent::localizeContentWithEmptyTcaIntegrityColumns();
269  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentWithEmptyTcaIntegrityColumns.csv');
270 
271  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
272  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
273  self::assertThat($responseSections, (new HasRecordConstraint())
274  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', '[Translate to Dansk:] Regular Element #2'));
275  }
276 
277  #[Test]
279  {
280  // Create translated page first
281  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
282  parent::localizeContentWithLanguageSynchronization();
283  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentWSynchronization.csv');
284 
285  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
286  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
287  self::assertThat($responseSections, (new HasRecordConstraint())
288  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', 'Testing #1'));
289  }
290 
291  #[Test]
293  {
294  // Create translated page first
295  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
296  parent::localizeContentWithLanguageSynchronizationHavingNullValue();
297  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentWSynchronizationHNull.csv');
298 
299  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
300  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
301  self::assertThat($responseSections, (new HasRecordConstraint())
302  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Regular Element #1', 'Testing #1'));
303  }
304 
305  #[Test]
307  {
308  // Create translated page first
309  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
310  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageIdSecond);
311  parent::localizeContentFromNonDefaultLanguage();
312 
313  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentFromNonDefaultLanguage.csv');
314 
315  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
316  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
317  self::assertThat($responseSections, (new HasRecordConstraint())
318  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Deutsch:] [Translate to Dansk:] Regular Element #1', '[Translate to Deutsch:] [Translate to Dansk:] Regular Element #3'));
319  }
320 
321  #[Test]
323  {
324  // Create translated page first
325  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
326  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageIdSecond);
327  parent::localizeContentFromNonDefaultLanguageWithLanguageSynchronizationDefault();
328 
329  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentFromNonDefaultLanguageWSynchronizationDefault.csv');
330 
331  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
332  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
333  self::assertThat($responseSections, (new HasRecordConstraint())
334  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Deutsch:] [Translate to Dansk:] Regular Element #1', 'Testing #1'));
335  }
336 
337  #[Test]
339  {
340  // Create translated page first
341  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
342  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageIdSecond);
343  parent::localizeContentFromNonDefaultLanguageWithLanguageSynchronizationSource();
344 
345  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentFromNonDefaultLanguageWSynchronizationSource.csv');
346 
347  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
348  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
349  self::assertThat($responseSections, (new HasRecordConstraint())
350  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Deutsch:] [Translate to Dansk:] Regular Element #1', 'Testing #1'));
351  }
352 
353  #[Test]
355  {
356  parent::localizeContentFromNonDefaultLanguageWithAllContentElements();
357  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentFromNonDefaultLanguageWithAllContentElements.csv');
358  }
359 
360  #[Test]
361  public function ‪localizeContentAfterMovedContent(): void
362  {
363  $this->importCSVDataSet(__DIR__ . '/../DataSet/ImportFreeModeElements.csv');
364  parent::localizeContentAfterMovedContent();
365  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeContentAfterMovedContent.csv');
366  }
367 
368  #[Test]
369  public function ‪createLocalizedContent(): void
370  {
371  // Create translated page first
372  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
373  parent::createLocalizedContent();
374 
375  $this->assertCSVDataSet(__DIR__ . '/DataSet/createLocalizedContent.csv');
376 
377  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
378  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
379  self::assertThat($responseSections, (new HasRecordConstraint())
380  ->setTable(self::TABLE_Content)->setField('header')->setValues('Localized Testing'));
381  }
382 
383  #[Test]
385  {
386  // Create translated page first
387  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
388  parent::createLocalizedContentWithLanguageSynchronization();
389 
390  $this->assertCSVDataSet(__DIR__ . '/DataSet/createLocalizedContentWSynchronization.csv');
391 
392  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
393  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
394  self::assertThat($responseSections, (new HasRecordConstraint())
395  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing'));
396  }
397 
398  #[Test]
400  {
401  // Create translated page first
402  $this->actionService->copyRecordToLanguage(self::TABLE_Page, self::VALUE_PageId, self::VALUE_LanguageId);
403  parent::createLocalizedContentWithLocalizationExclude();
404 
405  $this->assertCSVDataSet(__DIR__ . '/DataSet/createLocalizedContentWExclude.csv');
406 
407  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageIdSecond));
408  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
409  self::assertThat($responseSections, (new HasRecordConstraint())
410  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing', '[Translate to Dansk:] Regular Element #1', 'Regular Element #2'));
411  }
412 
413  #[Test]
414  public function ‪changeContentSorting(): void
415  {
416  parent::changeContentSorting();
417  $this->assertCSVDataSet(__DIR__ . '/DataSet/changeContentSorting.csv');
418 
419  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
420  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
421  self::assertThat($responseSections, (new HasRecordConstraint())
422  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
423  }
424 
425  #[Test]
426  public function ‪changeContentSortingAfterSelf(): void
427  {
428  parent::changeContentSortingAfterSelf();
429  $this->assertCSVDataSet(__DIR__ . '/DataSet/changeContentSortingAfterSelf.csv');
430 
431  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
432  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
433  self::assertThat($responseSections, (new HasRecordConstraint())
434  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
435  }
436 
437  #[Test]
438  public function ‪moveContentToDifferentPage(): void
439  {
440  parent::moveContentToDifferentPage();
441  $this->assertCSVDataSet(__DIR__ . '/DataSet/moveContentToDifferentPage.csv');
442 
443  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
444  $responseSectionsSource = ResponseContent::fromString((string)$response->getBody())->getSections();
445  self::assertThat($responseSectionsSource, (new HasRecordConstraint())
446  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
447  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageIdTarget));
448  $responseSectionsTarget = ResponseContent::fromString((string)$response->getBody())->getSections();
449  self::assertThat($responseSectionsTarget, (new HasRecordConstraint())
450  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
451  }
452 
453  #[Test]
454  public function ‪movePasteContentToDifferentPage(): void
455  {
456  parent::movePasteContentToDifferentPage();
457  $this->assertCSVDataSet(__DIR__ . '/DataSet/movePasteContentToDifferentPage.csv');
458 
459  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
460  $responseSectionsSource = ResponseContent::fromString((string)$response->getBody())->getSections();
461  self::assertThat($responseSectionsSource, (new HasRecordConstraint())
462  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
463  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageIdTarget));
464  $responseSectionsTarget = ResponseContent::fromString((string)$response->getBody())->getSections();
465  self::assertThat($responseSectionsTarget, (new HasRecordConstraint())
466  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
467  }
468 
469  #[Test]
471  {
472  parent::moveContentToDifferentPageAndChangeSorting();
473  $this->assertCSVDataSet(__DIR__ . '/DataSet/moveContentToDifferentPageNChangeSorting.csv');
474 
475  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageIdTarget));
476  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
477  self::assertThat($responseSections, (new HasRecordConstraint())
478  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
479  }
480 
481  #[Test]
482  public function ‪createPage(): void
483  {
484  parent::createPage();
485  $this->assertCSVDataSet(__DIR__ . '/DataSet/createPage.csv');
486 
487  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId($this->recordIds['newPageId']));
488  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
489  self::assertThat($responseSections, (new HasRecordConstraint())
490  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
491  }
492 
493  #[Test]
495  {
496  parent::createPageAndSubPageAndSubPageContent();
497  $this->assertCSVDataSet(__DIR__ . '/DataSet/createPageAndSubPageAndSubPageContent.csv');
498 
499  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId($this->recordIds['newSubPageId']));
500  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
501  self::assertThat($responseSections, (new HasRecordConstraint())
502  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1 #1'));
503  }
504 
505  #[Test]
507  {
508  // set default configuration
509  ‪$GLOBALS['TCA']['pages']['columns']['slug']['config']['generatorOptions'] = [
510  'fields' => [
511  'title',
512  ],
513  'fieldSeparator' => '-',
514  'prefixParentPageSlug' => true,
515  ];
516  // set override for doktype default
517  ‪$GLOBALS['TCA']['pages']['types'][‪PageRepository::DOKTYPE_DEFAULT]['columnsOverrides'] = [
518  'slug' => [
519  'config' => [
520  'generatorOptions' => [
521  'fields' => [
522  'nav_title',
523  ],
524  'fieldSeparator' => '-',
525  'prefixParentPageSlug' => true,
526  ],
527  ],
528  ],
529  ];
530  parent::createPage();
531  $this->assertCSVDataSet(__DIR__ . '/DataSet/createPageWithSlugOverrideConfiguration.csv');
532  }
533 
534  #[Test]
536  {
537  parent::createPageAndContentWithTcaDefaults();
538  $this->assertCSVDataSet(__DIR__ . '/DataSet/createPageNContentWDefaults.csv');
539 
540  // first, assert that page cannot be opened without using backend user (since it's hidden)
541  $response = $this->executeFrontendSubRequest(
542  (new InternalRequest())
543  ->withPageId($this->recordIds['newPageId'])
544  );
545  self::assertSame(404, $response->getStatusCode());
546 
547  // then, assert if preview is possible using a backend user
548  $response = $this->executeFrontendSubRequest(
549  (new InternalRequest())->withPageId($this->recordIds['newPageId']),
550  (new InternalRequestContext())->withBackendUserId(self::VALUE_BackendUserId)
551  );
552  $responseSections = ResponseContent::fromString((string)$response->getBody())
553  ->getSections();
554  self::assertThat($responseSections, (new HasRecordConstraint())
555  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
556  self::assertThat($responseSections, (new HasRecordConstraint())
557  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
558  }
559 
560  #[Test]
561  public function ‪modifyPage(): void
562  {
563  parent::modifyPage();
564  $this->assertCSVDataSet(__DIR__ . '/DataSet/modifyPage.csv');
565 
566  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
567  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
568  self::assertThat($responseSections, (new HasRecordConstraint())
569  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
570  }
571 
572  #[Test]
573  public function ‪deletePage(): void
574  {
575  parent::deletePage();
576  $this->assertCSVDataSet(__DIR__ . '/DataSet/deletePage.csv');
577 
578  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
579  self::assertEquals(404, $response->getStatusCode());
580  }
581 
582  #[Test]
583  public function ‪copyPage(): void
584  {
585  parent::copyPage();
586  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyPage.csv');
587 
588  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId($this->recordIds['newPageId']));
589  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
590  self::assertThat($responseSections, (new HasRecordConstraint())
591  ->setTable(self::TABLE_Page)->setField('title')->setValues('Relations'));
592  }
593 
600  #[Test]
601  public function ‪copyPageFreeMode(): void
602  {
603  $this->importCSVDataSet(__DIR__ . '/../DataSet/ImportFreeModeElements.csv');
604  parent::copyPageFreeMode();
605  $this->assertCSVDataSet(__DIR__ . '/DataSet/copyPageFreeMode.csv');
606 
607  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId($this->recordIds['newPageId']));
608  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
609  self::assertThat($responseSections, (new HasRecordConstraint())
610  ->setTable(self::TABLE_Page)->setField('title')->setValues('Target'));
611  }
612 
613  #[Test]
614  public function ‪localizePage(): void
615  {
616  parent::localizePage();
617  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePage.csv');
618 
619  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
620  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
621  self::assertThat($responseSections, (new HasRecordConstraint())
622  ->setTable(self::TABLE_Page)->setField('title')->setValues('[Translate to Dansk:] Relations'));
623  }
624 
625  #[Test]
627  {
628  parent::localizePageAndUpdateRecordWithMinorChangesInFullRetrievedRecord();
629  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageAndUpdateRecordWithMinorChangesInFullRetrievedRecord.csv');
630 
631  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
632  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
633  self::assertThat($responseSections, (new HasRecordConstraint())
634  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #2'));
635  }
636 
637  #[Test]
638  public function ‪localizeAndCopyPage(): void
639  {
640  parent::localizePage();
641  parent::copyPage();
642  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeNCopyPage.csv');
643 
644  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId($this->recordIds['newPageId'])->withLanguageId(self::VALUE_LanguageId));
645  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
646  self::assertThat($responseSections, (new HasRecordConstraint())
647  ->setTable(self::TABLE_Page)->setField('title')->setValues('[Translate to Dansk:] Relations'));
648  }
649 
650  #[Test]
652  {
653  parent::localizePageWithLanguageSynchronization();
654  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageWSynchronization.csv');
655 
656  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
657  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
658  self::assertThat($responseSections, (new HasRecordConstraint())
659  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
660  }
661 
662  #[Test]
664  {
665  parent::localizePageWithLanguageSynchronization();
666  parent::copyPage();
667  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeNCopyPageWSynchronization.csv');
668 
669  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId)->withLanguageId(self::VALUE_LanguageId));
670  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
671  self::assertThat($responseSections, (new HasRecordConstraint())
672  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
673  }
674 
675  #[Test]
677  {
678  parent::localizePageWithLanguageSynchronization();
679  // Set localized page "l10n_state" "author" field to "custom", then copy default language page, which will copy localized page as well.
680  $this->actionService->modifyRecord(self::TABLE_Page, $this->recordIds['localizedPageId'], ['author' => 'Custom Author', 'l10n_state' => ['author' => 'custom']]);
681  parent::copyPage();
682  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeNModifyNCopyPageWSynchronization.csv');
683  }
684 
685  #[Test]
687  {
688  // Create localized page and localize content elements first
689  parent::localizePageAndContentsAndDeletePageLocalization();
690  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageAndContentsAndDeletePageLocalization.csv');
691  }
692 
693  #[Test]
694  public function ‪localizeNestedPagesAndContents(): void
695  {
696  parent::localizeNestedPagesAndContents();
697  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizeNestedPagesAndContents.csv');
698  }
699 
700  #[Test]
701  public function ‪localizePageHiddenHideAtCopyFalse(): void
702  {
703  parent::localizePageHiddenHideAtCopyFalse();
704  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageHiddenHideAtCopyFalse.csv');
705  }
706 
707  #[Test]
709  {
710  parent::localizePageNotHiddenHideAtCopyFalse();
711  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageNotHiddenHideAtCopyFalse.csv');
712  }
713 
714  #[Test]
716  {
717  parent::localizePageNotHiddenHideAtCopyDisableHideAtCopyUnset();
718  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageNotHiddenHideAtCopyNotDisableHideAtCopyUnset.csv');
719  }
720 
721  #[Test]
723  {
724  parent::localizePageHiddenHideAtCopyDisableHideAtCopyUnset();
725  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageHiddenHideAtCopyNotDisableHideAtCopyUnset.csv');
726  }
727 
728  #[Test]
730  {
731  parent::localizePageNotHiddenHideAtCopyDisableHideAtCopySetToFalse();
732  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageNotHiddenHideAtCopyDisableHideAtCopySetToFalse.csv');
733  }
734 
735  #[Test]
737  {
738  parent::localizePageHiddenHideAtCopyDisableHideAtCopySetToFalse();
739  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageHiddenHideAtCopyDisableHideAtCopySetToFalse.csv');
740  }
741 
742  #[Test]
744  {
745  parent::localizePageNotHiddenHideAtCopyDisableHideAtCopySetToTrue();
746  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageNotHiddenHideAtCopyDisableHideAtCopySetToTrue.csv');
747  }
748 
749  #[Test]
751  {
752  parent::localizePageHiddenHideAtCopyDisableHideAtCopySetToTrue();
753  $this->assertCSVDataSet(__DIR__ . '/DataSet/localizePageHiddenHideAtCopyDisableHideAtCopySetToTrue.csv');
754  }
755 
756  #[Test]
757  public function ‪changePageSorting(): void
758  {
759  parent::changePageSorting();
760  $this->assertCSVDataSet(__DIR__ . '/DataSet/changePageSorting.csv');
761 
762  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
763  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
764  self::assertThat($responseSections, (new HasRecordConstraint())
765  ->setTable(self::TABLE_Page)->setField('title')->setValues('Relations'));
766  self::assertThat($responseSections, (new HasRecordConstraint())
767  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
768  }
769 
770  #[Test]
771  public function ‪changePageSortingAfterSelf(): void
772  {
773  parent::changePageSortingAfterSelf();
774  $this->assertCSVDataSet(__DIR__ . '/DataSet/changePageSortingAfterSelf.csv');
775 
776  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
777  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
778  self::assertThat($responseSections, (new HasRecordConstraint())
779  ->setTable(self::TABLE_Page)->setField('title')->setValues('Relations'));
780  self::assertThat($responseSections, (new HasRecordConstraint())
781  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
782  }
783 
784  #[Test]
785  public function ‪movePageToDifferentPage(): void
786  {
787  parent::movePageToDifferentPage();
788  $this->assertCSVDataSet(__DIR__ . '/DataSet/movePageToDifferentPage.csv');
789 
790  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
791  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
792  self::assertThat($responseSections, (new HasRecordConstraint())
793  ->setTable(self::TABLE_Page)->setField('title')->setValues('Relations'));
794  self::assertThat($responseSections, (new HasRecordConstraint())
795  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
796  }
797 
798  #[Test]
799  public function ‪movePageToDifferentPageTwice(): void
800  {
801  parent::movePageToDifferentPageTwice();
802  $this->assertCSVDataSet(__DIR__ . '/DataSet/movePageToDifferentPageTwice.csv');
803  }
804 
805  #[Test]
807  {
808  parent::movePageLocalizedToDifferentPageTwice();
809  $this->assertCSVDataSet(__DIR__ . '/DataSet/movePageLocalizedToDifferentPageTwice.csv');
810  }
811 
812  #[Test]
814  {
815  parent::movePageToDifferentPageAndChangeSorting();
816  $this->assertCSVDataSet(__DIR__ . '/DataSet/movePageToDifferentPageNChangeSorting.csv');
817 
818  $response = $this->executeFrontendSubRequest((new InternalRequest())->withPageId(self::VALUE_PageId));
819  $responseSections = ResponseContent::fromString((string)$response->getBody())->getSections();
820  self::assertThat($responseSections, (new HasRecordConstraint())
821  ->setTable(self::TABLE_Page)->setField('title')->setValues('Relations'));
822  self::assertThat($responseSections, (new HasRecordConstraint())
823  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1', 'Regular Element #2'));
824  }
825 }
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyContent
‪copyContent()
Definition: ActionTest.php:124
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyContentToLanguageWithLanguageSynchronization
‪copyContentToLanguageWithLanguageSynchronization()
Definition: ActionTest.php:161
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentWithLanguageSynchronizationHavingNullValue
‪localizeContentWithLanguageSynchronizationHavingNullValue()
Definition: ActionTest.php:292
‪TYPO3\CMS\Core\Tests\Functional\SiteHandling\SiteBasedTestTrait\buildLanguageConfiguration
‪buildLanguageConfiguration(string $identifier, string $base, array $fallbackIdentifiers=[], string $fallbackType=null)
Definition: SiteBasedTestTrait.php:108
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\deleteContent
‪deleteContent()
Definition: ActionTest.php:93
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\modifyPage
‪modifyPage()
Definition: ActionTest.php:561
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createPageWithSlugOverrideConfiguration
‪createPageWithSlugOverrideConfiguration()
Definition: ActionTest.php:506
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createContents
‪createContents()
Definition: ActionTest.php:39
‪TYPO3\CMS\Core\Domain\Repository\PageRepository\DOKTYPE_DEFAULT
‪const DOKTYPE_DEFAULT
Definition: PageRepository.php:98
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\moveContentToDifferentPageAndChangeSorting
‪moveContentToDifferentPageAndChangeSorting()
Definition: ActionTest.php:470
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\movePageToDifferentPageAndChangeSorting
‪movePageToDifferentPageAndChangeSorting()
Definition: ActionTest.php:813
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeAndModifyTranslationAndCopyPageWithLanguageSynchronization
‪localizeAndModifyTranslationAndCopyPageWithLanguageSynchronization()
Definition: ActionTest.php:676
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentWithEmptyTcaIntegrityColumns
‪localizeContentWithEmptyTcaIntegrityColumns()
Definition: ActionTest.php:266
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\AbstractActionTestCase
Definition: AbstractActionTestCase.php:29
‪TYPO3\CMS\Core\Tests\Functional\SiteHandling\SiteBasedTestTrait\writeSiteConfiguration
‪writeSiteConfiguration(string $identifier, array $site=[], array $languages=[], array $errorHandling=[])
Definition: SiteBasedTestTrait.php:50
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageNotHiddenHideAtCopyFalse
‪localizePageNotHiddenHideAtCopyFalse()
Definition: ActionTest.php:708
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeAndCopyPageWithLanguageSynchronization
‪localizeAndCopyPageWithLanguageSynchronization()
Definition: ActionTest.php:663
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentWithLanguageSynchronization
‪localizeContentWithLanguageSynchronization()
Definition: ActionTest.php:278
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createPage
‪createPage()
Definition: ActionTest.php:482
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyPasteContent
‪copyPasteContent()
Definition: ActionTest.php:237
‪TYPO3\CMS\Core\Tests\Functional\SiteHandling\SiteBasedTestTrait\buildSiteConfiguration
‪buildSiteConfiguration(int $rootPageId, string $base='')
Definition: SiteBasedTestTrait.php:88
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\changePageSorting
‪changePageSorting()
Definition: ActionTest.php:757
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyPage
‪copyPage()
Definition: ActionTest.php:583
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\verifyCleanReferenceIndex
‪verifyCleanReferenceIndex()
Definition: ActionTest.php:32
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\deletePage
‪deletePage()
Definition: ActionTest.php:573
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageHiddenHideAtCopyDisableHideAtCopySetToTrue
‪localizePageHiddenHideAtCopyDisableHideAtCopySetToTrue()
Definition: ActionTest.php:750
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentFromNonDefaultLanguageWithAllContentElements
‪localizeContentFromNonDefaultLanguageWithAllContentElements()
Definition: ActionTest.php:354
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\modifyTranslatedContent
‪modifyTranslatedContent()
Definition: ActionTest.php:79
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\changeContentSorting
‪changeContentSorting()
Definition: ActionTest.php:414
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\modifyContent
‪modifyContent()
Definition: ActionTest.php:67
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageNotHiddenHideAtCopyDisableHideAtCopySetToFalse
‪localizePageNotHiddenHideAtCopyDisableHideAtCopySetToFalse()
Definition: ActionTest.php:729
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify
Definition: ActionTest.php:18
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeNestedPagesAndContents
‪localizeNestedPagesAndContents()
Definition: ActionTest.php:694
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\movePasteContentToDifferentPage
‪movePasteContentToDifferentPage()
Definition: ActionTest.php:454
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\movePageLocalizedToDifferentPageTwice
‪movePageLocalizedToDifferentPageTwice()
Definition: ActionTest.php:806
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePage
‪localizePage()
Definition: ActionTest.php:614
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentAfterMovedContent
‪localizeContentAfterMovedContent()
Definition: ActionTest.php:361
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyPageFreeMode
‪copyPageFreeMode()
Definition: ActionTest.php:601
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContent
‪localizeContent()
Definition: ActionTest.php:249
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\movePageToDifferentPage
‪movePageToDifferentPage()
Definition: ActionTest.php:785
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageHiddenHideAtCopyFalse
‪localizePageHiddenHideAtCopyFalse()
Definition: ActionTest.php:701
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageAndContentsAndDeletePageLocalization
‪localizePageAndContentsAndDeletePageLocalization()
Definition: ActionTest.php:686
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageNotHiddenHideAtCopyDisableHideAtCopySetToTrue
‪localizePageNotHiddenHideAtCopyDisableHideAtCopySetToTrue()
Definition: ActionTest.php:743
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageWithLanguageSynchronization
‪localizePageWithLanguageSynchronization()
Definition: ActionTest.php:651
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageHiddenHideAtCopyDisableHideAtCopyUnset
‪localizePageHiddenHideAtCopyDisableHideAtCopyUnset()
Definition: ActionTest.php:722
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\changePageSortingAfterSelf
‪changePageSortingAfterSelf()
Definition: ActionTest.php:771
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyContentToLanguageFromNonDefaultLanguage
‪copyContentToLanguageFromNonDefaultLanguage()
Definition: ActionTest.php:211
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createLocalizedContentWithLanguageSynchronization
‪createLocalizedContentWithLanguageSynchronization()
Definition: ActionTest.php:384
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\movePageToDifferentPageTwice
‪movePageToDifferentPageTwice()
Definition: ActionTest.php:799
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageHiddenHideAtCopyDisableHideAtCopySetToFalse
‪localizePageHiddenHideAtCopyDisableHideAtCopySetToFalse()
Definition: ActionTest.php:736
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\changeContentSortingAfterSelf
‪changeContentSortingAfterSelf()
Definition: ActionTest.php:426
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createPageAndSubPageAndSubPageContent
‪createPageAndSubPageAndSubPageContent()
Definition: ActionTest.php:494
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createPageAndContentWithTcaDefaults
‪createPageAndContentWithTcaDefaults()
Definition: ActionTest.php:535
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeAndCopyPage
‪localizeAndCopyPage()
Definition: ActionTest.php:638
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageAndUpdateRecordWithMinorChangesInFullRetrievedRecord
‪localizePageAndUpdateRecordWithMinorChangesInFullRetrievedRecord()
Definition: ActionTest.php:626
‪TYPO3\CMS\Core\Tests\Functional\SiteHandling\SiteBasedTestTrait\buildDefaultLanguageConfiguration
‪buildDefaultLanguageConfiguration(string $identifier, string $base)
Definition: SiteBasedTestTrait.php:98
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:25
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentFromNonDefaultLanguage
‪localizeContentFromNonDefaultLanguage()
Definition: ActionTest.php:306
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest
Definition: ActionTest.php:30
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createLocalizedContentWithLocalizationExclude
‪createLocalizedContentWithLocalizationExclude()
Definition: ActionTest.php:399
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentFromNonDefaultLanguageWithLanguageSynchronizationDefault
‪localizeContentFromNonDefaultLanguageWithLanguageSynchronizationDefault()
Definition: ActionTest.php:322
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\deleteLocalizedContentAndDeleteContent
‪deleteLocalizedContentAndDeleteContent()
Definition: ActionTest.php:107
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createLocalizedContent
‪createLocalizedContent()
Definition: ActionTest.php:369
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizeContentFromNonDefaultLanguageWithLanguageSynchronizationSource
‪localizeContentFromNonDefaultLanguageWithLanguageSynchronizationSource()
Definition: ActionTest.php:338
‪TYPO3\CMS\Core\Domain\Repository\PageRepository
Definition: PageRepository.php:69
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyContentToLanguage
‪copyContentToLanguage()
Definition: ActionTest.php:136
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\moveContentToDifferentPage
‪moveContentToDifferentPage()
Definition: ActionTest.php:438
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\localizePageNotHiddenHideAtCopyDisableHideAtCopyUnset
‪localizePageNotHiddenHideAtCopyDisableHideAtCopyUnset()
Definition: ActionTest.php:715
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\createContentForLanguageAll
‪createContentForLanguageAll()
Definition: ActionTest.php:51
‪TYPO3\CMS\Core\Tests\Functional\DataScenarios\Regular\Modify\ActionTest\copyContentToLanguageWithLocalizationExclude
‪copyContentToLanguageWithLocalizationExclude()
Definition: ActionTest.php:186