[TASK] Extend regular workspaces DataHandler functional tests 66/45066/3
authorOliver Hader <oliver@typo3.org>
Mon, 30 Nov 2015 15:13:59 +0000 (16:13 +0100)
committerOliver Hader <oliver.hader@typo3.org>
Mon, 30 Nov 2015 17:21:31 +0000 (18:21 +0100)
The following actions are added:
* delete content and copy either draft or live page
* change content sorting and copy either draft or live page
* move content around and copy either draft or live page

Resolves: #71988
Releases: master, 6.2
Change-Id: I398fc9f0e7f91a9a944c74868d2718fdf19aa9f8
Reviewed-on: https://review.typo3.org/45066
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/AbstractActionTestCase.php
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/ActionTest.php
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyDraftPage.csv [new file with mode: 0644]
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyLivePage.csv [new file with mode: 0644]
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyDraftPage.csv [new file with mode: 0644]
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyLivePage.csv [new file with mode: 0644]
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyDraftPage.csv [new file with mode: 0644]
typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyLivePage.csv [new file with mode: 0644]

index f484c5f..ac5fb91 100644 (file)
@@ -377,4 +377,88 @@ abstract class AbstractActionTestCase extends \TYPO3\CMS\Core\Tests\Functional\D
         // Switch back to draft workspace
         $this->backendUser->workspace = static::VALUE_WorkspaceId;
     }
+
+    /**
+     * Deletes a content element and copies the page in draft workspace
+     */
+    public function deleteContentAndCopyDraftPage()
+    {
+        $this->actionService->deleteRecord(self::TABLE_Content, self::VALUE_ContentIdSecond);
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+    }
+
+    /**
+     * Deletes a content element and copies the page in live workspace
+     */
+    public function deleteContentAndCopyLivePage()
+    {
+        $this->actionService->deleteRecord(self::TABLE_Content, self::VALUE_ContentIdSecond);
+
+        // Switch to live workspace
+        $this->backendUser->workspace = 0;
+
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+
+        // Switch back to draft workspace
+        $this->backendUser->workspace = static::VALUE_WorkspaceId;
+    }
+
+    /**
+     * Changes content sorting and copies the page in draft workspace.
+     */
+    public function changeContentSortingAndCopyDraftPage()
+    {
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdFirst, -self::VALUE_ContentIdSecond);
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+    }
+
+    /**
+     * Changes content sorting and copies the page in live workspace.
+     */
+    public function changeContentSortingAndCopyLivePage()
+    {
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdFirst, -self::VALUE_ContentIdSecond);
+
+        // Switch to live workspace
+        $this->backendUser->workspace = 0;
+
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+
+        // Switch back to draft workspace
+        $this->backendUser->workspace = static::VALUE_WorkspaceId;
+    }
+
+    /**
+     * Moves content either from and to the current page and copies the page in draft workspace.
+     */
+    public function moveContentAndCopyDraftPage()
+    {
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdSecond, self::VALUE_PageIdTarget);
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdZero, self::VALUE_PageId);
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+    }
+
+    /**
+     * Moves content either from and to the current page and copies the page in draft workspace.
+     */
+    public function moveContentAndCopyLivePage()
+    {
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdSecond, self::VALUE_PageIdTarget);
+        $this->actionService->moveRecord(self::TABLE_Content, self::VALUE_ContentIdZero, self::VALUE_PageId);
+
+        // Switch to live workspace
+        $this->backendUser->workspace = 0;
+
+        $newTableIds = $this->actionService->copyRecord(self::TABLE_Page, self::VALUE_PageId, self::VALUE_PageIdTarget);
+        $this->recordIds['copiedPageId'] = $newTableIds[self::TABLE_Page][self::VALUE_PageId];
+
+        // Switch back to draft workspace
+        $this->backendUser->workspace = static::VALUE_WorkspaceId;
+    }
+
 }
index 163ca1e..bd0d5f3 100644 (file)
@@ -361,6 +361,10 @@ class ActionTest extends \TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\Reg
             ->setTable(self::TABLE_Page)->setField('title')->setValues('Target', 'Testing #1', 'DataHandlerTest'));
     }
 
+    /*************************************
+     * Copying page contents and sub-pages
+     *************************************/
+
     /**
      * @test
      * @see DataSet/createContentAndCopyDraftPage.csv
@@ -462,4 +466,113 @@ class ActionTest extends \TYPO3\CMS\Workspaces\Tests\Functional\DataHandling\Reg
 //        $this->assertThat($responseSectionsDraft, $this->getRequestSectionDoesNotHaveRecordConstraint()
 //            ->setTable(static::TABLE_Page)->setField('title')->setValues('Testing #1'));
     }
+
+    /**
+     * @test
+     * @see DataSet/deleteContentAndCopyDraftPage.csv
+     */
+    public function deleteContentAndCopyDraftPage()
+    {
+        parent::deleteContentAndCopyDraftPage();
+        $this->assertAssertionDataSet('deleteContentAndCopyDraftPage');
+
+//        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+//        $this->assertThat($responseSectionsLive, $this->getRequestSectionDoesNotHaveRecordConstraint()
+//            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+//        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+//        $this->assertThat($responseSectionsDraft, $this->getRequestSectionDoesNotHaveRecordConstraint()
+//            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+    }
+
+    /**
+     * @test
+     * @see DataSet/deleteContentAndCopyLivePage.csv
+     */
+    public function deleteContentAndCopyLivePage()
+    {
+        parent::deleteContentAndCopyLivePage();
+        $this->assertAssertionDataSet('deleteContentAndCopyLivePage');
+
+        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+        $this->assertThat($responseSectionsLive, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+        $this->assertThat($responseSectionsDraft, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+    }
+
+    /**
+     * @test
+     * @see DataSet/changeContentSortingAndCopyDraftPage.csv
+     */
+    public function changeContentSortingAndCopyDraftPage()
+    {
+        parent::changeContentSortingAndCopyDraftPage();
+        $this->assertAssertionDataSet('changeContentSortingAndCopyDraftPage');
+
+        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+        $this->assertThat($responseSectionsLive, $this->getRequestSectionDoesNotHaveRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
+        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+        $this->assertThat($responseSectionsDraft, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
+    }
+
+    /**
+     * @test
+     * @see DataSet/changeContentSortingAndCopyLivePage.csv
+     */
+    public function changeContentSortingAndCopyLivePage()
+    {
+        parent::changeContentSortingAndCopyLivePage();
+        $this->assertAssertionDataSet('changeContentSortingAndCopyLivePage');
+
+        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+        $this->assertThat($responseSectionsLive, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
+        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+        $this->assertThat($responseSectionsDraft, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #1'));
+    }
+
+    /**
+     * @test
+     * @see DataSet/moveContentAndCopyDraftPage.csv
+     */
+    public function moveContentAndCopyDraftPage()
+    {
+        parent::moveContentAndCopyDraftPage();
+        $this->assertAssertionDataSet('moveContentAndCopyDraftPage');
+
+//        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+//        $this->assertThat($responseSectionsLive, $this->getRequestSectionDoesNotHaveRecordConstraint()
+//            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #0', 'Regular Element #2'));
+//        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+//        $this->assertThat($responseSectionsDraft, $this->getRequestSectionDoesNotHaveRecordConstraint()
+//            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+//        $this->assertThat($responseSectionsDraft, $this->getRequestSectionHasRecordConstraint()
+//            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #0'));
+    }
+
+    /**
+     * @test
+     * @see DataSet/moveContentAndCopyLivePage.csv
+     */
+    public function moveContentAndCopyLivePage()
+    {
+        parent::moveContentAndCopyLivePage();
+        $this->assertAssertionDataSet('moveContentAndCopyLivePage');
+
+        $responseSectionsLive = $this->getFrontendResponse($this->recordIds['copiedPageId'])->getResponseSections();
+        $this->assertThat($responseSectionsLive, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+        $this->assertThat($responseSectionsLive, $this->getRequestSectionDoesNotHaveRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #0'));
+        $responseSectionsDraft = $this->getFrontendResponse($this->recordIds['copiedPageId'], 0, static::VALUE_BackendUserId, static::VALUE_WorkspaceId)->getResponseSections();
+        $this->assertThat($responseSectionsDraft, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #2'));
+        $this->assertThat($responseSectionsDraft, $this->getRequestSectionDoesNotHaveRecordConstraint()
+            ->setTable(self::TABLE_Content)->setField('header')->setValues('Regular Element #0'));
+    }
+
 }
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyDraftPage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyDraftPage.csv
new file mode 100644 (file)
index 0000000..d3c0635
--- /dev/null
@@ -0,0 +1,28 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,1,1,0,0,0,Relations
+,92,-1,256,0,1,-1,0,91,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,256,0,0,0,1,4,0,297,0,"Regular Element #1"
+,303,89,640,0,0,0,1,3,0,0,297,"[MOVE-TO PLACEHOLDER for #297, WS#1]"
+,304,91,256,0,0,0,1,1,0,0,0,"Regular Element #3"
+,305,-1,256,0,0,0,1,-1,0,304,0,"Regular Element #3"
+,306,91,128,0,1,304,1,1,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,307,-1,128,0,1,304,1,-1,0,306,0,"[Translate to Dansk:] Regular Element #3"
+,308,91,64,0,0,0,1,1,0,0,0,"Regular Element #1"
+,309,-1,64,0,0,0,1,-1,0,308,0,"Regular Element #1"
+,310,91,32,0,0,0,1,1,0,0,0,"Regular Element #2"
+,311,-1,32,0,0,0,1,-1,0,310,0,"Regular Element #2"
+,312,91,16,0,0,0,1,1,0,0,0,"Regular Element #1"
+,313,-1,16,0,0,0,1,-1,0,312,0,"Regular Element #1"
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyLivePage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/changeContentSortingAndCopyLivePage.csv
new file mode 100644 (file)
index 0000000..63b93fc
--- /dev/null
@@ -0,0 +1,22 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,0,0,0,0,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,256,0,0,0,1,4,0,297,0,"Regular Element #1"
+,303,89,640,0,0,0,1,3,0,0,297,"[MOVE-TO PLACEHOLDER for #297, WS#1]"
+,304,91,256,0,0,0,0,0,0,0,0,"Regular Element #3"
+,305,91,128,0,1,304,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,306,91,64,0,0,0,0,0,0,0,0,"[MOVE-TO PLACEHOLDER for #297, WS#1]"
+,307,91,32,0,0,0,0,0,0,0,0,"Regular Element #2"
+,308,91,16,0,0,0,0,0,0,0,0,"Regular Element #1"
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyDraftPage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyDraftPage.csv
new file mode 100644 (file)
index 0000000..4e8f557
--- /dev/null
@@ -0,0 +1,25 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,1,1,0,0,0,Relations
+,92,-1,256,0,1,-1,0,91,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,512,0,0,0,1,2,0,298,0,"Regular Element #2"
+,303,91,256,0,0,0,1,1,0,0,0,"Regular Element #3"
+,304,-1,256,0,0,0,1,-1,0,303,0,"Regular Element #3"
+,305,91,128,0,1,303,1,1,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,306,-1,128,0,1,303,1,-1,0,305,0,"[Translate to Dansk:] Regular Element #3"
+,307,91,64,0,0,0,1,1,0,0,0,"Regular Element #2"
+,308,-1,64,0,0,0,1,-1,0,307,0,"Regular Element #2"
+,309,91,32,0,0,0,1,1,0,0,0,"Regular Element #1"
+,310,-1,32,0,0,0,1,-1,0,309,0,"Regular Element #1"
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyLivePage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/deleteContentAndCopyLivePage.csv
new file mode 100644 (file)
index 0000000..2c8b136
--- /dev/null
@@ -0,0 +1,20 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,0,0,0,0,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,512,0,0,0,1,2,0,298,0,"Regular Element #2"
+,303,91,256,0,0,0,0,0,0,0,0,"Regular Element #3"
+,304,91,128,0,1,303,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,305,91,64,0,0,0,0,0,0,0,0,"Regular Element #2"
+,306,91,32,0,0,0,0,0,0,0,0,"Regular Element #1"
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyDraftPage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyDraftPage.csv
new file mode 100644 (file)
index 0000000..b5a2e00
--- /dev/null
@@ -0,0 +1,30 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,1,1,0,0,0,Relations
+,92,-1,256,0,1,-1,0,91,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,512,0,0,0,1,4,0,298,0,"Regular Element #2"
+,303,90,256,0,0,0,1,3,0,0,298,"[MOVE-TO PLACEHOLDER for #298, WS#1]"
+,304,-1,256,0,0,0,1,4,0,296,0,"Regular Element #0"
+,305,89,128,0,0,0,1,3,0,0,296,"[MOVE-TO PLACEHOLDER for #296, WS#1]"
+,306,91,256,0,0,0,1,1,0,0,0,"Regular Element #3"
+,307,-1,256,0,0,0,1,-1,0,306,0,"Regular Element #3"
+,308,91,128,0,1,306,1,1,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,309,-1,128,0,1,306,1,-1,0,308,0,"[Translate to Dansk:] Regular Element #3"
+,310,91,64,0,0,0,1,1,0,0,0,"Regular Element #2"
+,311,-1,64,0,0,0,1,-1,0,310,0,"Regular Element #2"
+,312,91,32,0,0,0,1,1,0,0,0,"Regular Element #1"
+,313,-1,32,0,0,0,1,-1,0,312,0,"Regular Element #1"
+,314,91,16,0,0,0,1,1,0,0,0,"Regular Element #0"
+,315,-1,16,0,0,0,1,-1,0,314,0,"Regular Element #0"
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyLivePage.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/Regular/Modify/DataSet/moveContentAndCopyLivePage.csv
new file mode 100644 (file)
index 0000000..530499b
--- /dev/null
@@ -0,0 +1,24 @@
+pages
+,uid,pid,sorting,deleted,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,title
+,1,0,256,0,0,0,0,0,0,FunctionalTest
+,88,1,256,0,0,0,0,0,0,DataHandlerTest
+,89,88,256,0,0,0,0,0,0,Relations
+,90,88,512,0,0,0,0,0,0,Target
+,91,90,256,0,0,0,0,0,0,Relations
+tt_content
+,uid,pid,sorting,deleted,sys_language_uid,l18n_parent,t3ver_wsid,t3ver_state,t3ver_stage,t3ver_oid,t3ver_move_id,header
+,296,88,256,0,0,0,0,0,0,0,0,"Regular Element #0"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2"
+,299,89,768,0,0,0,0,0,0,0,0,"Regular Element #3"
+,300,89,1024,0,1,299,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,301,-1,512,0,0,0,2,2,0,298,0,"Regular Element #2"
+,302,-1,512,0,0,0,1,4,0,298,0,"Regular Element #2"
+,303,90,256,0,0,0,1,3,0,0,298,"[MOVE-TO PLACEHOLDER for #298, WS#1]"
+,304,-1,256,0,0,0,1,4,0,296,0,"Regular Element #0"
+,305,89,128,0,0,0,1,3,0,0,296,"[MOVE-TO PLACEHOLDER for #296, WS#1]"
+,306,91,256,0,0,0,0,0,0,0,0,"Regular Element #3"
+,307,91,128,0,1,306,0,0,0,0,0,"[Translate to Dansk:] Regular Element #3"
+,308,91,64,0,0,0,0,0,0,0,0,"Regular Element #2"
+,309,91,32,0,0,0,0,0,0,0,0,"Regular Element #1"
+,310,91,16,0,0,0,0,0,0,0,0,"[MOVE-TO PLACEHOLDER for #296, WS#1]"