‪TYPO3CMS  9.5
ActionTest.php
Go to the documentation of this file.
1 <?php
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 
21 {
25  protected ‪$assertionDataSetDirectory = 'typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/';
26 
35  public function ‪createParentContent()
36  {
37  parent::createParentContent();
38  $this->‪assertAssertionDataSet('createParentContent');
39 
40  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
41  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
42  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
43  }
44 
49  public function ‪modifyParentContent()
50  {
51  parent::modifyParentContent();
52  $this->‪assertAssertionDataSet('modifyParentContent');
53 
54  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
55  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
56  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
57  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
58  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
59  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
60  }
61 
66  public function ‪deleteParentContent()
67  {
68  parent::deleteParentContent();
69  $this->‪assertAssertionDataSet('deleteParentContent');
70 
71  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
72  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
73  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
74  }
75 
81  {
82  parent::deleteParentContentAndDiscardDeletedParent();
83  $this->‪assertAssertionDataSet('deleteParentContentNDiscardDeletedParent');
84 
85  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
86  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
87  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
88  }
89 
94  public function ‪copyParentContent()
95  {
96  parent::copyParentContent();
97  $this->‪assertAssertionDataSet('copyParentContent');
98 
99  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
100  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
101  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
102  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
103  }
104 
109  public function ‪copyParentContentToDifferentPage()
110  {
111  parent::copyParentContentToDifferentPage();
112  $this->‪assertAssertionDataSet('copyParentContentToDifferentPage');
113 
114  $responseSections = $this->getFrontendResponse(self::VALUE_PageIdTarget, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
115  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
116  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
117  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
118  }
119 
125  {
126  parent::localizeParentContentWithAllChildren();
127  $this->‪assertAssertionDataSet('localizeParentContentWAllChildren');
128 
129  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, self::VALUE_LanguageId, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
130  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
131  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
132  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('[Translate to Dansk:] Hotel #1'));
133  }
134 
139  public function ‪changeParentContentSorting()
140  {
141  parent::changeParentContentSorting();
142  $this->‪assertAssertionDataSet('changeParentContentSorting');
143 
144  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
145  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
146  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
147  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
148  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
149  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
150  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
151  }
152 
157  public function ‪moveParentContentToDifferentPage()
158  {
159  parent::moveParentContentToDifferentPage();
160  $this->‪assertAssertionDataSet('moveParentContentToDifferentPage');
161 
162  $responseSections = $this->getFrontendResponse(self::VALUE_PageIdTarget, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
163  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
164  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
165  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
166  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
167  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
168  }
169 
175  {
176  parent::moveParentContentToDifferentPageAndChangeSorting();
177  $this->‪assertAssertionDataSet('moveParentContentToDifferentPageNChangeSorting');
178 
179  $responseSections = $this->getFrontendResponse(self::VALUE_PageIdTarget, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
180  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
181  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2', 'Regular Element #1'));
182  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
183  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
184  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
185  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
186  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
187  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
188  }
189 
198  public function ‪modifyPage()
199  {
200  parent::modifyPage();
201  $this->‪assertAssertionDataSet('modifyPage');
202 
203  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
204  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
205  ->setTable(self::TABLE_Page)->setField('title')->setValues('Testing #1'));
206  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
207  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
208  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
209  }
210 
215  public function ‪deletePage()
216  {
217  parent::deletePage();
218  $this->‪assertAssertionDataSet('deletePage');
219 
220  $response = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId, false);
221  $this->assertContains('PageNotFoundException', $response->getError());
222  }
223 
228  public function ‪copyPage()
229  {
230  parent::copyPage();
231  $this->‪assertAssertionDataSet('copyPage');
232 
233  $responseSections = $this->getFrontendResponse($this->recordIds['newPageId'], 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
234  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
235  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2', 'Hotel #1'));
236  }
237 
243  {
244  parent::copyPageWithHotelBeforeParentContent();
245  $this->‪assertAssertionDataSet('copyPageWHotelBeforeParentContent');
246 
247  $responseSections = $this->getFrontendResponse($this->recordIds['newPageId'], 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
248  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
249  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2', 'Hotel #1'));
250  }
251 
261  {
262  parent::changeHotelSortingWithOfferNotWorkspaceAware();
263  $this->‪assertAssertionDataSet('changeHotelSortingWithOfferNotWorkspaceAware');
264 
265  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
266  self::assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
267  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
268  self::assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
269  ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
270  ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.1'));
271  self::assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
272  ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
273  ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.2'));
274  self::assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
275  ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdSecond)->setRecordField(self::FIELD_HotelOffer)
276  ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #2.1'));
277  }
278 
284  {
285  parent::createParentContentWithHotelAndOfferChildren();
286  $this->‪assertAssertionDataSet('createParentContentNHotelNOfferChildren');
287 
288  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
289  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
290  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
291  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
292  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
293  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
294  }
295 
301  {
302  parent::createAndCopyParentContentWithHotelAndOfferChildren();
303  $this->‪assertAssertionDataSet('createNCopyParentContentNHotelNOfferChildren');
304 
305  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
306  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
307  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1 (copy 1)'));
308  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
309  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
310  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
311  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
312  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['copiedContentId'])->setRecordField(self::FIELD_ContentHotel)
313  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
314  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
315  ->setRecordIdentifier(self::TABLE_Hotel . ':' . $this->recordIds['copiedHotelId'])->setRecordField(self::FIELD_HotelOffer)
316  ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1'));
317  }
318 
324  {
325  parent::createAndCopyParentContentWithHotelAndOfferChildrenAndDiscardCopiedParent();
326  $this->‪assertAssertionDataSet('createNCopyParentNHotelNOfferChildrenNDiscardCopiedParent');
327 
328  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
329  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
330  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1 (copy 1)'));
331  }
332 
338  {
339  parent::createAndLocalizeParentContentWithHotelAndOfferChildren();
340  $this->‪assertAssertionDataSet('createNLocalizeParentContentNHotelNOfferChildren');
341 
342  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, self::VALUE_LanguageId, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
343  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
344  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Testing #1'));
345  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
346  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
347  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('[Translate to Dansk:] Hotel #1'));
348  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
349  ->setRecordIdentifier(self::TABLE_Hotel . ':' . $this->recordIds['newHotelId'])->setRecordField(self::FIELD_HotelOffer)
350  ->setTable(self::TABLE_Offer)->setField('title')->setValues('[Translate to Dansk:] Offer #1'));
351  }
352 
358  {
359  parent::createAndLocalizeParentContentWithHotelAndOfferChildrenWithoutSortByConfiguration();
360  $this->‪assertAssertionDataSet('createNLocalizeParentContentNHotelNOfferChildrenWOSortBy');
361 
362  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, self::VALUE_LanguageId, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
363  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
364  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Testing #1'));
365  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
366  ->setRecordIdentifier(self::TABLE_Content . ':' . $this->recordIds['newContentId'])->setRecordField(self::FIELD_ContentHotel)
367  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('[Translate to Dansk:] Hotel #1'));
368  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
369  ->setRecordIdentifier(self::TABLE_Hotel . ':' . $this->recordIds['newHotelId'])->setRecordField(self::FIELD_HotelOffer)
370  ->setTable(self::TABLE_Offer)->setField('title')->setValues('[Translate to Dansk:] Offer #1'));
371  }
372 
378  {
379  parent::createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardCreatedParent();
380  $this->‪assertAssertionDataSet('createNLocParentNHotelNOfferChildrenNDiscardCreatedParent');
381 
382  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, self::VALUE_LanguageId, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
383  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
384  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1', '[Translate to Dansk:] Testing #1'));
385  }
386 
392  {
393  parent::createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardLocalizedParent();
394  $this->‪assertAssertionDataSet('createNLocParentNHotelNOfferChildrenNDiscardLocParent');
395 
396  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, self::VALUE_LanguageId, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
397  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
398  ->setTable(self::TABLE_Content)->setField('header')->setValues('[Translate to Dansk:] Testing #1'));
399  }
400 
405  public function ‪modifyOnlyHotelChild()
406  {
407  parent::modifyOnlyHotelChild();
408  $this->‪assertAssertionDataSet('modifyOnlyHotelChild');
409 
410  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
411  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
412  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
413  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Testing #1'));
414  }
415 
421  {
422  parent::modifyParentAndChangeHotelChildrenSorting();
423  $this->‪assertAssertionDataSet('modifyParentNChangeHotelChildrenSorting');
424 
425  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
426  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
427  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
428  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #2', 'Hotel #1'));
429  }
430 
435  public function ‪modifyParentWithHotelChild()
436  {
437  parent::modifyParentWithHotelChild();
438  $this->‪assertAssertionDataSet('modifyParentNHotelChild');
439 
440  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
441  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
442  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
443  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Testing #1'));
444  }
445 
451  {
452  parent::modifyParentWithHotelChildAndDiscardModifiedParent();
453  $this->‪assertAssertionDataSet('modifyParentNHotelChildNDiscardModifiedParent');
454 
455  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
456  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
457  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
458  // Discarding the parent shall not discard the child records
459  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
460  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
461  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Testing #1'));
462  $this->assertThat($responseSections, $this->‪getRequestSectionStructureDoesNotHaveRecordConstraint()
463  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
464  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #2'));
465  }
466 
472  {
473  parent::modifyParentWithHotelChildAndDiscardAll();
474  $this->‪assertAssertionDataSet('modifyParentNHotelChildNDiscardAll');
475 
476  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
477  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
478  ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
479  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
480  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdFirst)->setRecordField(self::FIELD_ContentHotel)
481  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
482  }
483 
488  public function ‪modifyParentAndAddHotelChild()
489  {
490  parent::modifyParentAndAddHotelChild();
491  $this->‪assertAssertionDataSet('modifyParentNAddHotelChild');
492 
493  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
494  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
495  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
496  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
497  }
498 
503  public function ‪modifyParentAndDeleteHotelChild()
504  {
505  parent::modifyParentAndDeleteHotelChild();
506  $this->‪assertAssertionDataSet('modifyParentNDeleteHotelChild');
507 
508  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
509  $this->assertThat($responseSections, $this->‪getRequestSectionStructureHasRecordConstraint()
510  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
511  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1'));
512  $this->assertThat($responseSections, $this->‪getRequestSectionStructureDoesNotHaveRecordConstraint()
513  ->setRecordIdentifier(self::TABLE_Content . ':' . self::VALUE_ContentIdLast)->setRecordField(self::FIELD_ContentHotel)
514  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #2'));
515  }
516 
522  {
523  parent::modifyAndDiscardAndModifyParentWithHotelChild();
524  $this->‪assertAssertionDataSet('modifyNDiscardNModifyParentWHotelChild');
525 
526  $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
527  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
528  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #1'));
529  $this->assertThat($responseSections, $this->‪getRequestSectionDoesNotHaveRecordConstraint()
530  ->setTable(self::TABLE_Hotel)->setField('header')->setValues('Testing #1'));
531  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
532  ->setTable(self::TABLE_Content)->setField('header')->setValues('Testing #2'));
533  $this->assertThat($responseSections, $this->‪getRequestSectionHasRecordConstraint()
534  ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Testing #2'));
535  }
536 }
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentAndDeleteHotelChild
‪modifyParentAndDeleteHotelChild()
Definition: ActionTest.php:502
‪TYPO3\CMS\Core\Tests\Functional\DataHandling\AbstractDataHandlerActionTestCase\getRequestSectionHasRecordConstraint
‪HasRecordConstraint getRequestSectionHasRecordConstraint()
Definition: AbstractDataHandlerActionTestCase.php:174
‪TYPO3\CMS\Core\Tests\Functional\DataHandling\AbstractDataHandlerActionTestCase\getRequestSectionStructureHasRecordConstraint
‪StructureHasRecordConstraint getRequestSectionStructureHasRecordConstraint()
Definition: AbstractDataHandlerActionTestCase.php:190
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\moveParentContentToDifferentPageAndChangeSorting
‪moveParentContentToDifferentPageAndChangeSorting()
Definition: ActionTest.php:173
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\$assertionDataSetDirectory
‪string $assertionDataSetDirectory
Definition: ActionTest.php:24
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardCreatedParent
‪createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardCreatedParent()
Definition: ActionTest.php:376
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\moveParentContentToDifferentPage
‪moveParentContentToDifferentPage()
Definition: ActionTest.php:156
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\copyParentContentToDifferentPage
‪copyParentContentToDifferentPage()
Definition: ActionTest.php:108
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentWithHotelChildAndDiscardModifiedParent
‪modifyParentWithHotelChildAndDiscardModifiedParent()
Definition: ActionTest.php:449
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentWithHotelChild
‪modifyParentWithHotelChild()
Definition: ActionTest.php:434
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentContent
‪modifyParentContent()
Definition: ActionTest.php:48
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\copyPage
‪copyPage()
Definition: ActionTest.php:227
‪TYPO3\CMS\Core\Tests\Functional\DataHandling\AbstractDataHandlerActionTestCase\getRequestSectionStructureDoesNotHaveRecordConstraint
‪StructureDoesNotHaveRecordConstraint getRequestSectionStructureDoesNotHaveRecordConstraint()
Definition: AbstractDataHandlerActionTestCase.php:198
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\AbstractActionTestCase
Definition: AbstractActionTestCase.php:21
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentWithHotelChildAndDiscardAll
‪modifyParentWithHotelChildAndDiscardAll()
Definition: ActionTest.php:470
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentAndChangeHotelChildrenSorting
‪modifyParentAndChangeHotelChildrenSorting()
Definition: ActionTest.php:419
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify
Definition: ActionTest.php:2
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createParentContentWithHotelAndOfferChildren
‪createParentContentWithHotelAndOfferChildren()
Definition: ActionTest.php:282
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest
Definition: ActionTest.php:21
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\localizeParentContentWithAllChildren
‪localizeParentContentWithAllChildren()
Definition: ActionTest.php:123
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyPage
‪modifyPage()
Definition: ActionTest.php:197
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardLocalizedParent
‪createAndLocalizeParentContentWithHotelAndOfferChildrenAndDiscardLocalizedParent()
Definition: ActionTest.php:390
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndCopyParentContentWithHotelAndOfferChildrenAndDiscardCopiedParent
‪createAndCopyParentContentWithHotelAndOfferChildrenAndDiscardCopiedParent()
Definition: ActionTest.php:322
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\copyParentContent
‪copyParentContent()
Definition: ActionTest.php:93
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\deleteParentContentAndDiscardDeletedParent
‪deleteParentContentAndDiscardDeletedParent()
Definition: ActionTest.php:79
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createParentContent
‪createParentContent()
Definition: ActionTest.php:34
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\deletePage
‪deletePage()
Definition: ActionTest.php:214
‪TYPO3\CMS\Core\Tests\Functional\DataHandling\AbstractDataHandlerActionTestCase\assertAssertionDataSet
‪assertAssertionDataSet($dataSetName)
Definition: AbstractDataHandlerActionTestCase.php:124
‪TYPO3\CMS\Core\Tests\Functional\DataHandling\AbstractDataHandlerActionTestCase\getRequestSectionDoesNotHaveRecordConstraint
‪DoesNotHaveRecordConstraint getRequestSectionDoesNotHaveRecordConstraint()
Definition: AbstractDataHandlerActionTestCase.php:182
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\copyPageWithHotelBeforeParentContent
‪copyPageWithHotelBeforeParentContent()
Definition: ActionTest.php:241
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndCopyParentContentWithHotelAndOfferChildren
‪createAndCopyParentContentWithHotelAndOfferChildren()
Definition: ActionTest.php:299
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\changeParentContentSorting
‪changeParentContentSorting()
Definition: ActionTest.php:138
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyParentAndAddHotelChild
‪modifyParentAndAddHotelChild()
Definition: ActionTest.php:487
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\deleteParentContent
‪deleteParentContent()
Definition: ActionTest.php:65
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyAndDiscardAndModifyParentWithHotelChild
‪modifyAndDiscardAndModifyParentWithHotelChild()
Definition: ActionTest.php:520
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndLocalizeParentContentWithHotelAndOfferChildren
‪createAndLocalizeParentContentWithHotelAndOfferChildren()
Definition: ActionTest.php:336
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\modifyOnlyHotelChild
‪modifyOnlyHotelChild()
Definition: ActionTest.php:404
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\createAndLocalizeParentContentWithHotelAndOfferChildrenWithoutSortByConfiguration
‪createAndLocalizeParentContentWithHotelAndOfferChildrenWithoutSortByConfiguration()
Definition: ActionTest.php:356
‪TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\IRRE\ForeignField\Modify\ActionTest\changeHotelSortingWithOfferNotWorkspaceAware
‪changeHotelSortingWithOfferNotWorkspaceAware()
Definition: ActionTest.php:259