diff --git a/.circleci/config.yml b/.circleci/config.yml
index 8a5e7bc78a..faba746390 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -65,7 +65,7 @@ jobs:
environment:
COMPOSER_CACHE_DIR: /home/circleci/composer/cache-dir
docker:
- - image: cimg/php:8.0-node
+ - image: cimg/php:8.2-node
steps:
- attach_workspace: *attach_workspace
- run: chmod -R 777 /home/circleci
@@ -81,8 +81,9 @@ jobs:
e2e:
environment:
FLOW_CONTEXT: Production
+ DB_HOST: 127.0.0.1
docker:
- - image: cimg/php:8.0-node
+ - image: cimg/php:8.2-node
- image: cimg/mariadb:10.6
environment:
MYSQL_DATABASE: neos
@@ -113,6 +114,8 @@ jobs:
cd /home/circleci/app/Packages/Application/Neos.Neos.Ui
nvm install
nvm use
+ echo 127.0.0.1 onedimension.localhost | sudo tee -a /etc/hosts
+ echo 127.0.0.1 twodimensions.localhost | sudo tee -a /etc/hosts
make test-e2e-saucelabs
- store_artifacts:
path: /home/circleci/app/Data/Logs
@@ -121,7 +124,7 @@ jobs:
environment:
FLOW_CONTEXT: Production
docker:
- - image: cimg/php:8.0-node
+ - image: cimg/php:8.2-node
- image: cimg/mariadb:10.6
environment:
MYSQL_DATABASE: neos
diff --git a/Classes/ContentRepository/Service/WorkspaceService.php b/Classes/ContentRepository/Service/WorkspaceService.php
index 2480a859e2..a66162966e 100644
--- a/Classes/ContentRepository/Service/WorkspaceService.php
+++ b/Classes/ContentRepository/Service/WorkspaceService.php
@@ -13,7 +13,7 @@
use Neos\ContentRepository\Core\ContentRepository;
use Neos\ContentRepository\Core\Factory\ContentRepositoryId;
-use Neos\ContentRepository\Core\Projection\ContentGraph\ContentSubgraphIdentity;
+use Neos\ContentRepository\Core\Feature\WorkspacePublication\Command\DiscardIndividualNodesFromWorkspace;
use Neos\ContentRepository\Core\Projection\ContentGraph\Node;
use Neos\ContentRepository\Core\Projection\Workspace\Workspace;
use Neos\Neos\FrontendRouting\NodeAddress;
@@ -24,8 +24,8 @@
use Neos\Flow\Annotations as Flow;
use Neos\Neos\Domain\Service\UserService as DomainUserService;
use Neos\Neos\PendingChangesProjection\ChangeFinder;
-use Neos\Neos\PendingChangesProjection\ChangeProjection;
use Neos\Neos\Service\UserService;
+use Neos\Neos\Ui\Domain\Model\Feedback\Operations\RemoveNode;
/**
* @Flow\Scope("singleton")
@@ -155,6 +155,53 @@ public function getAllowedTargetWorkspaces(ContentRepository $contentRepository)
return $workspacesArray;
}
+ public function predictRemoveNodeFeedbackFromDiscardIndividualNodesFromWorkspaceCommand(
+ DiscardIndividualNodesFromWorkspace $command,
+ ContentRepository $contentRepository
+ ): array {
+ $workspace = $contentRepository->getWorkspaceFinder()->findOneByName($command->workspaceName);
+ if (is_null($workspace)) {
+ return Nodes::createEmpty();
+ }
+
+ $changeFinder = $contentRepository->projectionState(ChangeFinder::class);
+ $changes = $changeFinder->findByContentStreamId($workspace->currentContentStreamId);
+
+ $handledNodes = [];
+ $result = [];
+ foreach ($changes as $change) {
+ if ($change->created) {
+ foreach ($command->nodesToDiscard as $nodeToDiscard) {
+ if (in_array($nodeToDiscard, $handledNodes)) {
+ continue;
+ }
+
+ if (
+ $nodeToDiscard->contentStreamId->equals($change->contentStreamId)
+ && $nodeToDiscard->nodeAggregateId->equals($change->nodeAggregateId)
+ && $nodeToDiscard->dimensionSpacePoint->equals($change->originDimensionSpacePoint)
+ ) {
+ $subgraph = $contentRepository->getContentGraph()
+ ->getSubgraph(
+ $nodeToDiscard->contentStreamId,
+ $nodeToDiscard->dimensionSpacePoint,
+ VisibilityConstraints::withoutRestrictions()
+ );
+
+ $childNode = $subgraph->findNodeById($nodeToDiscard->nodeAggregateId);
+ $parentNode = $subgraph->findParentNode($nodeToDiscard->nodeAggregateId);
+ if ($parentNode) {
+ $result[] = new RemoveNode($childNode, $parentNode);
+ $handledNodes[] = $nodeToDiscard;
+ }
+ }
+ }
+ }
+ }
+
+ return $result;
+ }
+
private function getClosestDocumentNode(Node $node): ?Node
{
$subgraph = $this->contentRepositoryRegistry->subgraphForNode($node);
diff --git a/Classes/Controller/BackendServiceController.php b/Classes/Controller/BackendServiceController.php
index fa6be96d93..aa129095a9 100644
--- a/Classes/Controller/BackendServiceController.php
+++ b/Classes/Controller/BackendServiceController.php
@@ -294,18 +294,27 @@ public function discardAction(array $nodeContextPaths): void
$nodeAddress->dimensionSpacePoint
);
}
- $contentRepository->handle(
- DiscardIndividualNodesFromWorkspace::create(
- $workspaceName,
- NodeIdsToPublishOrDiscard::create(...$nodeIdentifiersToDiscard)
- )
- )->block();
+
+ $command = DiscardIndividualNodesFromWorkspace::create(
+ $workspaceName,
+ NodeIdsToPublishOrDiscard::create(...$nodeIdentifiersToDiscard)
+ );
+ $removeNodeFeedback = $this->workspaceService
+ ->predictRemoveNodeFeedbackFromDiscardIndividualNodesFromWorkspaceCommand(
+ $command,
+ $contentRepository
+ );
+
+ $contentRepository->handle($command)->block();
$success = new Success();
$success->setMessage(sprintf('Discarded %d node(s).', count($nodeContextPaths)));
$updateWorkspaceInfo = new UpdateWorkspaceInfo($contentRepositoryId, $workspaceName);
$this->feedbackCollection->add($success);
+ foreach ($removeNodeFeedback as $removeNode) {
+ $this->feedbackCollection->add($removeNode);
+ }
$this->feedbackCollection->add($updateWorkspaceInfo);
} catch (\Exception $e) {
$error = new Error();
diff --git a/Classes/Domain/Model/ChangeInterface.php b/Classes/Domain/Model/ChangeInterface.php
index 85ca3c0ba3..587d8941b4 100644
--- a/Classes/Domain/Model/ChangeInterface.php
+++ b/Classes/Domain/Model/ChangeInterface.php
@@ -13,7 +13,6 @@
* source code.
*/
-
use Neos\ContentRepository\Core\Projection\ContentGraph\Node;
/**
diff --git a/Classes/Domain/Model/Changes/MoveAfter.php b/Classes/Domain/Model/Changes/MoveAfter.php
index 4e5cd4d8de..beb8e275d9 100644
--- a/Classes/Domain/Model/Changes/MoveAfter.php
+++ b/Classes/Domain/Model/Changes/MoveAfter.php
@@ -88,9 +88,6 @@ public function apply(): void
$updateParentNodeInfo->setNode($parentNodeOfPreviousSibling);
$this->feedbackCollection->add($updateParentNodeInfo);
- $removeNode = new RemoveNode($subject, $parentNodeOfPreviousSibling);
- $this->feedbackCollection->add($removeNode);
-
$this->finish($subject);
}
}
diff --git a/Classes/Domain/Model/Changes/MoveBefore.php b/Classes/Domain/Model/Changes/MoveBefore.php
index 1c7ac8bcce..7b2d8285e9 100644
--- a/Classes/Domain/Model/Changes/MoveBefore.php
+++ b/Classes/Domain/Model/Changes/MoveBefore.php
@@ -87,9 +87,6 @@ public function apply(): void
$this->feedbackCollection->add($updateParentNodeInfo);
- $removeNode = new RemoveNode($subject, $succeedingSiblingParent);
- $this->feedbackCollection->add($removeNode);
-
$this->finish($subject);
}
}
diff --git a/Classes/Domain/Model/Changes/MoveInto.php b/Classes/Domain/Model/Changes/MoveInto.php
index aa4697c26a..ebccb70c9e 100644
--- a/Classes/Domain/Model/Changes/MoveInto.php
+++ b/Classes/Domain/Model/Changes/MoveInto.php
@@ -93,9 +93,6 @@ public function apply(): void
$updateParentNodeInfo->setNode($parentNode);
$this->feedbackCollection->add($updateParentNodeInfo);
- $removeNode = new RemoveNode($subject, $parentNode);
- $this->feedbackCollection->add($removeNode);
-
$this->finish($subject);
}
}
diff --git a/Classes/Domain/Model/Feedback/Operations/ReloadContentOutOfBand.php b/Classes/Domain/Model/Feedback/Operations/ReloadContentOutOfBand.php
index 792fcd72f0..07a6108a3f 100644
--- a/Classes/Domain/Model/Feedback/Operations/ReloadContentOutOfBand.php
+++ b/Classes/Domain/Model/Feedback/Operations/ReloadContentOutOfBand.php
@@ -11,6 +11,7 @@
* source code.
*/
+use Neos\Neos\Domain\Service\RenderingModeService;
use Neos\Neos\FrontendRouting\NodeAddressFactory;
use Neos\ContentRepository\Core\Projection\ContentGraph\Node;
use Neos\ContentRepositoryRegistry\ContentRepositoryRegistry;
@@ -49,6 +50,9 @@ class ReloadContentOutOfBand extends AbstractFeedback
*/
protected $contentRepositoryRegistry;
+ #[Flow\Inject]
+ protected RenderingModeService $renderingModeService;
+
public function setNode(Node $node): void
{
$this->node = $node;
@@ -131,8 +135,11 @@ protected function renderContent(ControllerContext $controllerContext): string|R
}
if ($this->nodeDomAddress) {
+ $renderingMode = $this->renderingModeService->findByCurrentUser();
+
$fusionView = new FusionView();
$fusionView->setControllerContext($controllerContext);
+ $fusionView->setOption('renderingModeName', $renderingMode->name);
$fusionView->assign('value', $this->node);
$fusionView->setFusionPath($this->nodeDomAddress->getFusionPathForContentRendering());
diff --git a/Classes/Domain/Model/Feedback/Operations/RemoveNode.php b/Classes/Domain/Model/Feedback/Operations/RemoveNode.php
index 389d35989b..f068c2ccba 100644
--- a/Classes/Domain/Model/Feedback/Operations/RemoveNode.php
+++ b/Classes/Domain/Model/Feedback/Operations/RemoveNode.php
@@ -14,6 +14,7 @@
use Neos\ContentRepositoryRegistry\ContentRepositoryRegistry;
use Neos\Flow\Annotations as Flow;
use Neos\Neos\FrontendRouting\NodeAddressFactory;
+use Neos\Neos\FrontendRouting\NodeAddress;
use Neos\ContentRepository\Core\Projection\ContentGraph\Node;
use Neos\Flow\Mvc\Controller\ControllerContext;
use Neos\Neos\Ui\Domain\Model\AbstractFeedback;
@@ -25,6 +26,10 @@ class RemoveNode extends AbstractFeedback
protected Node $parentNode;
+ private NodeAddress $nodeAddress;
+
+ private NodeAddress $parentNodeAddress;
+
/**
* @Flow\Inject
* @var ContentRepositoryRegistry
@@ -37,6 +42,15 @@ public function __construct(Node $node, Node $parentNode)
$this->parentNode = $parentNode;
}
+ protected function initializeObject(): void
+ {
+ $contentRepository = $this->contentRepositoryRegistry->get($this->node->subgraphIdentity->contentRepositoryId);
+ $nodeAddressFactory = NodeAddressFactory::create($contentRepository);
+
+ $this->nodeAddress = $nodeAddressFactory->createFromNode($this->node);
+ $this->parentNodeAddress = $nodeAddressFactory->createFromNode($this->parentNode);
+ }
+
public function getNode(): Node
{
return $this->node;
@@ -87,11 +101,9 @@ public function isSimilarTo(FeedbackInterface $feedback)
*/
public function serializePayload(ControllerContext $controllerContext)
{
- $contentRepository = $this->contentRepositoryRegistry->get($this->node->subgraphIdentity->contentRepositoryId);
- $nodeAddressFactory = NodeAddressFactory::create($contentRepository);
return [
- 'contextPath' => $nodeAddressFactory->createFromNode($this->node)->serializeForUri(),
- 'parentContextPath' => $nodeAddressFactory->createFromNode($this->parentNode)->serializeForUri()
+ 'contextPath' => $this->nodeAddress->serializeForUri(),
+ 'parentContextPath' => $this->parentNodeAddress->serializeForUri()
];
}
}
diff --git a/Classes/Domain/Model/Feedback/Operations/RenderContentOutOfBand.php b/Classes/Domain/Model/Feedback/Operations/RenderContentOutOfBand.php
index c3f9539372..409ad394e7 100644
--- a/Classes/Domain/Model/Feedback/Operations/RenderContentOutOfBand.php
+++ b/Classes/Domain/Model/Feedback/Operations/RenderContentOutOfBand.php
@@ -12,6 +12,7 @@
*/
use Neos\ContentRepository\Core\Projection\ContentGraph\Node;
+use Neos\Neos\Domain\Service\RenderingModeService;
use Neos\Neos\FrontendRouting\NodeAddressFactory;
use Neos\ContentRepositoryRegistry\ContentRepositoryRegistry;
use Neos\Flow\Annotations as Flow;
@@ -59,6 +60,9 @@ class RenderContentOutOfBand extends AbstractFeedback
*/
protected $contentRepositoryRegistry;
+ #[Flow\Inject]
+ protected RenderingModeService $renderingModeService;
+
public function setNode(Node $node): void
{
$this->node = $node;
@@ -177,8 +181,11 @@ protected function renderContent(ControllerContext $controllerContext): string|R
$parentDomAddress = $this->getParentDomAddress();
if ($parentDomAddress) {
+ $renderingMode = $this->renderingModeService->findByCurrentUser();
+
$fusionView = new FusionView();
$fusionView->setControllerContext($controllerContext);
+ $fusionView->setOption('renderingModeName', $renderingMode->name);
$fusionView->assign('value', $parentNode);
$fusionView->setFusionPath($parentDomAddress->getFusionPath());
diff --git a/Makefile b/Makefile
index 33b3f81881..013c46a2e7 100644
--- a/Makefile
+++ b/Makefile
@@ -112,6 +112,10 @@ test-e2e:
bash Tests/IntegrationTests/e2e.sh chrome
## Executes integration tests locally in a docker-compose setup.
+#
+# Note: On mac os you might need those two additional `/etc/hosts` entries:
+# 127.0.0.1 onedimension.localhost
+# 127.0.0.1 twodimensions.localhost
test-e2e-docker: build-e2e-testing
@bash Tests/IntegrationTests/e2e-docker.sh $(or $(browser),chrome)
diff --git a/Resources/Private/Fusion/Prototypes/Page.fusion b/Resources/Private/Fusion/Prototypes/Page.fusion
index 61dedd0bc4..b07bb56216 100644
--- a/Resources/Private/Fusion/Prototypes/Page.fusion
+++ b/Resources/Private/Fusion/Prototypes/Page.fusion
@@ -19,7 +19,7 @@ prototype(Neos.Neos:Page) {
@process.json = ${Json.stringify(value)}
@process.wrapInJsObject = ${''}
- @if.inBackend = ${Neos.Node.inBackend(documentNode)}
+ @if.inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
// We need to ensure the JS backend information is always up to date, especially
// when child nodes change. Otherwise errors like the following might happen:
@@ -35,11 +35,11 @@ prototype(Neos.Neos:Page) {
entryIdentifier {
jsBackendInfo = 'javascriptBackendInformation'
documentNode = ${Neos.Caching.entryIdentifierForNode(documentNode)}
- inBackend = ${Neos.Node.inBackend(documentNode)}
+ inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
}
entryTags {
1 = ${Neos.Caching.nodeTag(documentNode)}
- 2 = ${Neos.Node.inBackend(documentNode) ? Neos.Caching.descendantOfTag(documentNode) : null}
+ 2 = ${(renderingMode.isEdit || renderingMode.isPreview) ? Neos.Caching.descendantOfTag(documentNode) : null}
}
}
}
@@ -51,18 +51,18 @@ prototype(Neos.Neos:Page) {
compiledResourcePackage = ${Neos.Ui.StaticResources.compiledResourcePackage()}
sectionName = 'guestFrameApplication'
- @if.inBackend = ${Neos.Node.inBackend(documentNode)}
+ @if.inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
}
}
neosBackendContainer = '
'
neosBackendContainer.@position = 'before closingBodyTag'
- neosBackendContainer.@if.inBackend = ${Neos.Node.inBackend(documentNode)}
+ neosBackendContainer.@if.inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
neosBackendNotification = Neos.Fusion:Template {
@position = 'before closingBodyTag'
templatePath = 'resource://Neos.Neos.Ui/Private/Templates/Backend/GuestNotificationScript.html'
- @if.inBackend = ${Neos.Node.inBackend(documentNode)}
+ @if.inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
}
@exceptionHandler = 'Neos\\Neos\\Ui\\Fusion\\ExceptionHandler\\PageExceptionHandler'
diff --git a/Resources/Private/Fusion/Prototypes/Shortcut.fusion b/Resources/Private/Fusion/Prototypes/Shortcut.fusion
index 69f3a7ea29..23d36fe282 100644
--- a/Resources/Private/Fusion/Prototypes/Shortcut.fusion
+++ b/Resources/Private/Fusion/Prototypes/Shortcut.fusion
@@ -9,7 +9,7 @@ prototype(Neos.Neos:Page) {
}
@if {
- inBackend = ${Neos.Node.inBackend(documentNode)}
+ inBackend = ${renderingMode.isEdit || renderingMode.isPreview}
isShortcut = ${q(node).is('[instanceof Neos.Neos:Shortcut]')}
}
}
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Configuration/Settings.yaml b/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Configuration/Settings.yaml
deleted file mode 100644
index c3fcfc6093..0000000000
--- a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Configuration/Settings.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-Neos:
- ContentRepository:
- contentDimensions:
- language:
- label: 'Language'
- icon: icon-language
- default: en_US
- defaultPreset: en_US
- presets:
- en_US:
- label: 'English (US)'
- values:
- - en_US
- uriSegment: en
- en_UK:
- label: 'English (UK)'
- values:
- - en_UK
- - en_US
- uriSegment: uk
- de:
- label: German
- values:
- - de
- uriSegment: de
- fr:
- label: French
- values:
- - fr
- uriSegment: fr
- nl:
- label: Dutch
- values:
- - nl
- - de
- uriSegment: nl
- da:
- label: Danish
- values:
- - da
- uriSegment: da
- lv:
- label: Latvian
- values:
- - lv
- uriSegment: lv
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc b/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc
deleted file mode 100644
index 49b2fb4403..0000000000
Binary files a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc and /dev/null differ
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Sites.xml b/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Sites.xml
deleted file mode 100644
index 06d505de63..0000000000
--- a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Sites.xml
+++ /dev/null
@@ -1,680 +0,0 @@
-
-
-
-
-
-
-
- fr
-
-
- 2019-03-19T16:19:22+00:00
- 2019-03-19T16:19:37+00:00
- 2019-03-19T16:19:37+00:00
-
- Accueil
- home
-
-
-
-
- en_US
-
-
- 2018-06-26T23:20:17+00:00
- 2019-03-21T16:37:07+00:00
- 2019-03-21T16:37:07+00:00
-
- Home
- home
- {"__identity":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1","__type":"Neos\\Media\\Domain\\Model\\ImageVariant","originalAsset":{"__identity":"ee3d239e-48b0-4f99-90be-054301b91792","__type":"Neos\\Media\\Domain\\Model\\Image","title":"","copyrightNotice":"","caption":"","resource":{"filename":"neos_primary.png","collectionName":"persistent","relativePublicationPath":"","mediaType":"image\/png","sha1":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","hash":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","__identity":"71abb35f-f167-4677-a3f5-386785e9d874"}},"adjustments":[{"aspectRatio":null,"height":126,"position":10,"width":126,"x":328,"y":0,"__identity":"206ccf9b-ddd8-4021-951b-c7df0adf893a","__type":"Neos\\Media\\Domain\\Model\\Adjustment\\CropImageAdjustment"}]}
-
-
-
-
- en_UK
-
-
- 2019-03-25T15:23:14+00:00
- 2019-03-25T15:23:55+00:00
- 2019-03-25T15:23:55+00:00
-
- Home
- home
- {"__identity":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1","__type":"Neos\\Media\\Domain\\Model\\ImageVariant","originalAsset":{"__identity":"ee3d239e-48b0-4f99-90be-054301b91792","__type":"Neos\\Media\\Domain\\Model\\Image","title":"","copyrightNotice":"","caption":"","resource":{"filename":"neos_primary.png","collectionName":"persistent","relativePublicationPath":"","mediaType":"image\/png","sha1":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","hash":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","__identity":"71abb35f-f167-4677-a3f5-386785e9d874"}},"adjustments":[{"aspectRatio":null,"height":126,"position":10,"width":126,"x":328,"y":0,"__identity":"206ccf9b-ddd8-4021-951b-c7df0adf893a","__type":"Neos\\Media\\Domain\\Model\\Adjustment\\CropImageAdjustment"}]}
-
-
-
-
- nl
-
-
- 2019-03-19T16:18:55+00:00
- 2019-03-19T16:19:13+00:00
- 2019-03-19T16:19:12+00:00
-
- Huis
- home
-
-
-
-
- lv
-
-
- 2019-03-19T16:17:16+00:00
- 2019-03-19T16:20:49+00:00
- 2019-03-19T16:20:49+00:00
-
- Mājas
- home
-
-
-
-
- de
-
-
- 2019-03-19T16:19:45+00:00
- 2019-03-19T16:20:23+00:00
- 2019-03-19T16:20:23+00:00
-
- Startseite
- home
-
-
-
-
- da
-
-
- 2019-03-19T16:18:09+00:00
- 2019-03-19T16:18:47+00:00
- 2019-03-19T16:18:47+00:00
-
- Hjem
- home
-
-
-
-
-
- fr
-
-
- 2019-03-19T16:19:22+00:00
- 2019-03-19T16:19:37+00:00
- 2019-03-19T16:19:37+00:00
-
-
-
-
- en_UK
-
-
- 2019-03-25T15:23:14+00:00
- 2019-03-25T15:23:55+00:00
- 2019-03-25T15:23:55+00:00
-
-
-
-
- de
-
-
- 2019-03-19T16:19:45+00:00
- 2019-03-19T16:20:23+00:00
- 2019-03-19T16:20:23+00:00
-
-
-
-
- nl
-
-
- 2019-03-19T16:18:55+00:00
- 2019-03-19T16:19:13+00:00
- 2019-03-19T16:19:12+00:00
-
-
-
-
- da
-
-
- 2019-03-19T16:18:09+00:00
- 2019-03-19T16:18:14+00:00
- 2019-03-19T16:18:14+00:00
-
-
-
-
- lv
-
-
- 2019-03-19T16:17:16+00:00
- 2019-03-19T16:17:21+00:00
- 2019-03-19T16:17:20+00:00
-
-
-
-
- en_US
-
-
- 2018-06-26T23:20:17+00:00
- 2019-03-19T15:59:34+00:00
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:02:12+00:00
- 2019-03-21T17:21:44+00:00
- 2019-03-21T17:21:44+00:00
-
- Content node to delete
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:25:49+00:00
- 2019-03-21T14:26:02+00:00
- 2019-03-21T14:26:02+00:00
-
- create-new-nodes
- Create new nodes
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:25:49+00:00
- 2019-03-21T14:26:02+00:00
- 2019-03-21T14:26:02+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:25:59+00:00
- 2019-03-21T15:14:16+00:00
- 2019-03-21T15:14:16+00:00
-
- link-target
- Link target
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:25:59+00:00
- 2019-03-21T14:26:02+00:00
- 2019-03-21T14:26:02+00:00
-
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T16:56:13+00:00
- 2019-03-21T16:56:43+00:00
- 2019-03-21T16:56:43+00:00
-
- discarding
- Discarding
-
-
-
-
-
- en_US
-
-
- 2019-03-21T16:56:13+00:00
- 2019-03-21T16:56:43+00:00
- 2019-03-21T16:56:43+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T16:56:26+00:00
- 2019-03-21T16:56:43+00:00
- 2019-03-21T16:56:43+00:00
-
- node-to-delete
- Node to delete
-
-
-
-
-
- en_US
-
-
- 2019-03-21T16:56:26+00:00
- 2019-03-21T16:56:43+00:00
- 2019-03-21T16:56:43+00:00
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:20:00+00:00
- 2019-03-21T17:20:10+00:00
- 2019-03-21T17:20:10+00:00
-
- <h1>I'll be deleted</h1>
-
-
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:19:11+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
- tree-search
- Tree search
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:19:11+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:20:26+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
- searchme-shortcut
- firstChildNode
- Searchme shortcut
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:20:05+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
- not-searched-shortcut
- firstChildNode
- Not searched shortcut
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:20:17+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
- searchme-page
- Searchme page
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:20:17+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:19:55+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
- not-searched-page
- Not searched page
-
-
-
-
-
- en_US
-
-
- 2019-03-21T14:19:55+00:00
- 2019-03-21T14:20:31+00:00
- 2019-03-21T14:20:30+00:00
-
-
-
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:53:37+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
- tree-multiselect
- Tree multiselect
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:53:37+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:53:49+00:00
- 2019-12-20T17:12:15+00:00
- 2019-12-20T17:12:14+00:00
-
- a
- MultiA
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:53:49+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
-
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:00+00:00
- 2019-12-20T17:12:15+00:00
- 2019-12-20T17:12:14+00:00
-
- b
- MultiB
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:00+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
-
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:08+00:00
- 2019-12-20T17:12:15+00:00
- 2019-12-20T17:12:14+00:00
-
- c
- MultiC
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:08+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
-
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:21+00:00
- 2019-12-20T17:12:15+00:00
- 2019-12-20T17:12:14+00:00
-
- d
- MultiD
-
-
-
-
-
- en_US
-
-
- 2019-12-20T16:54:21+00:00
- 2019-12-20T17:01:04+00:00
- 2019-12-20T17:01:03+00:00
-
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- switching-dimensions
- Switching dimensions
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:50+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- translated-page
- Translated page
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:50+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:57:19+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- untranslated-page
- Untranslated page
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:57:19+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- select-boxes
- Select Boxes
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
- en_US
-
-
- 2019-03-21T17:56:50+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- select-box-opens-above-in-inspector
- SelectBox opens above in Inspector
-
-
-
-
-
-
-
-
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/discarding.e2e.js b/Tests/IntegrationTests/Fixtures/1Dimension/discarding.e2e.js
index ec99d3640c..40aa73ad75 100644
--- a/Tests/IntegrationTests/Fixtures/1Dimension/discarding.e2e.js
+++ b/Tests/IntegrationTests/Fixtures/1Dimension/discarding.e2e.js
@@ -38,7 +38,7 @@ test('Discarding: create multiple nodes nested within each other and then discar
.expect(ReactSelector('Provider').getReact(({props}) => {
const reduxState = props.store.getState();
return reduxState.cr.nodes.documentNode;
- })).eql('/sites/neos-test-site@user-admin;language=en_US', 'After discarding we are back to the main page');
+ })).eql('user-admin__eyJsYW5ndWFnZSI6ImVuX1VTIn0=__f676459d-ca77-44bc-aeea-44114814c279', 'After discarding we are back to the main page');
});
test('Discarding: create a document node and then discard it', async t => {
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/treeMultiselect.e2e.js b/Tests/IntegrationTests/Fixtures/1Dimension/treeMultiselect.e2e.js
index 2714737440..885bfd3c00 100644
--- a/Tests/IntegrationTests/Fixtures/1Dimension/treeMultiselect.e2e.js
+++ b/Tests/IntegrationTests/Fixtures/1Dimension/treeMultiselect.e2e.js
@@ -26,7 +26,7 @@ test('Move multiple nodes via toolbar', async t => {
.expect(ReactSelector('Provider').getReact(({props}) => {
const reduxState = props.store.getState();
return reduxState.cr.nodes.documentNode;
- })).eql('/sites/neos-test-site/node-knm2pltb5454z/node-18qsaeidy6765/node-e8tw6sparbtp3@user-admin;language=en_US', 'Node B\'s context path changed');
+ })).eql('user-admin__eyJsYW5ndWFnZSI6ImVuX1VTIn0=__5b0d6ac0-40ab-47e8-b79e-39de6c0700df', 'Node B\'s node address changed');
await t.click(Page.getTreeNodeButton('Home'))
});
@@ -43,7 +43,7 @@ test('Move multiple nodes via DND, CMD-click', async t => {
.expect(ReactSelector('Provider').getReact(({props}) => {
const reduxState = props.store.getState();
return reduxState.cr.nodes.documentNode;
- })).eql('/sites/neos-test-site/node-knm2pltb5454z/node-18qsaeidy6765/node-e8tw6sparbtp3@user-admin;language=en_US', 'Node B\'s context path changed');
+ })).eql('user-admin__eyJsYW5ndWFnZSI6ImVuX1VTIn0=__5b0d6ac0-40ab-47e8-b79e-39de6c0700df', 'Node B\'s node address changed');
await t.click(Page.getTreeNodeButton('Home'))
});
@@ -60,6 +60,6 @@ test('Move multiple nodes via DND, SHIFT-click', async t => {
.expect(ReactSelector('Provider').getReact(({props}) => {
const reduxState = props.store.getState();
return reduxState.cr.nodes.documentNode;
- })).eql('/sites/neos-test-site/node-knm2pltb5454z/node-18qsaeidy6765/node-oml0cxaompt29@user-admin;language=en_US', 'Node C\'s context path changed');
+ })).eql('user-admin__eyJsYW5ndWFnZSI6ImVuX1VTIn0=__84eb0340-ba34-4fdb-98b1-da503f967121', 'Node C\'s node address changed');
await t.click(Page.getTreeNodeButton('Home'))
});
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Configuration/Settings.yaml b/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Configuration/Settings.yaml
deleted file mode 100644
index 4881edaed5..0000000000
--- a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Configuration/Settings.yaml
+++ /dev/null
@@ -1,103 +0,0 @@
-Neos:
- ContentRepository:
- contentDimensions:
- 'country':
- default: 'deu'
- defaultPreset: 'deu'
- label: 'Country'
- icon: 'icon-globe'
- presets:
- 'deu':
- label: 'Germany'
- values: ['deu']
- uriSegment: 'deu'
- 'aut':
- label: 'Austria'
- values: ['aut', 'deu']
- uriSegment: 'aut'
- 'lux':
- label: 'Luxembourg'
- values: ['lux', 'deu']
- uriSegment: 'lux'
- 'dnk':
- label: 'Denmark'
- values: ['dnk']
- uriSegment: 'dnk'
- 'language':
- label: 'Language'
- icon: icon-language
- default: en_US
- defaultPreset: en_US
- presets:
- en_US:
- label: 'English (US)'
- values:
- - en_US
- uriSegment: en
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
- en_UK:
- label: 'English (UK)'
- values:
- - en_UK
- - en_US
- uriSegment: uk
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
- de:
- label: German
- values:
- - de
- uriSegment: de
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
- 'lux': true
- fr:
- label: French
- values:
- - fr
- uriSegment: fr
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
- nl:
- label: Dutch
- values:
- - nl
- - de
- uriSegment: nl
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
- da:
- label: Danish
- values:
- - da
- uriSegment: da
- constraints:
- country:
- '*': false
- 'dnk': true
- lv:
- label: Latvian
- values:
- - lv
- uriSegment: lv
- constraints:
- country:
- '*': false
- 'deu': true
- 'aut': true
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc b/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc
deleted file mode 100644
index 49b2fb4403..0000000000
Binary files a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Resources/6791d1beca5fa4ab78f1b2b1a44d43692f99b5dc and /dev/null differ
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Sites.xml b/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Sites.xml
deleted file mode 100644
index 36d80113ab..0000000000
--- a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Sites.xml
+++ /dev/null
@@ -1,315 +0,0 @@
-
-
-
-
-
-
-
- deu
- fr
-
-
- 2019-03-19T16:19:22+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:19:37+00:00
-
- Accueil
- home
-
-
-
-
- deu
- en_US
-
-
- 2018-06-26T23:20:17+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T16:37:07+00:00
-
- Home
- home
- {"__identity":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1","__type":"Neos\\Media\\Domain\\Model\\ImageVariant","originalAsset":{"__identity":"ee3d239e-48b0-4f99-90be-054301b91792","__type":"Neos\\Media\\Domain\\Model\\Image","title":"","resource":{"filename":"neos_primary.png","collectionName":"persistent","relativePublicationPath":"","mediaType":"image\/png","sha1":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","hash":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","__identity":"71abb35f-f167-4677-a3f5-386785e9d874"}},"adjustments":[{"height":126,"position":10,"width":126,"x":328,"y":0,"__identity":"a6acb618-5583-469f-93af-11211f50c93a","__type":"Neos\\Media\\Domain\\Model\\Adjustment\\CropImageAdjustment"}]}
-
-
-
-
- deu
- en_UK
-
-
- 2019-03-25T15:23:14+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-25T15:23:55+00:00
-
- Home
- home
- {"__identity":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1","__type":"Neos\\Media\\Domain\\Model\\ImageVariant","originalAsset":{"__identity":"ee3d239e-48b0-4f99-90be-054301b91792","__type":"Neos\\Media\\Domain\\Model\\Image","title":"","resource":{"filename":"neos_primary.png","collectionName":"persistent","relativePublicationPath":"","mediaType":"image\/png","sha1":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","hash":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","__identity":"71abb35f-f167-4677-a3f5-386785e9d874"}},"adjustments":[{"height":126,"position":10,"width":126,"x":328,"y":0,"__identity":"a6acb618-5583-469f-93af-11211f50c93a","__type":"Neos\\Media\\Domain\\Model\\Adjustment\\CropImageAdjustment"}]}
-
-
-
-
- dnk
- da
-
-
- 2019-04-15T04:16:33+00:00
- 2019-04-15T04:24:01+00:00
- 2019-04-15T04:24:00+00:00
-
- Home
- home
- {"__identity":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1","__type":"Neos\\Media\\Domain\\Model\\ImageVariant","originalAsset":{"__identity":"ee3d239e-48b0-4f99-90be-054301b91792","__type":"Neos\\Media\\Domain\\Model\\Image","title":"","resource":{"filename":"neos_primary.png","collectionName":"persistent","relativePublicationPath":"","mediaType":"image\/png","sha1":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","hash":"aac28f51e5ca842e2646e88e7d242ac3c27e1f25","__identity":"71abb35f-f167-4677-a3f5-386785e9d874"}},"adjustments":[{"height":126,"position":10,"width":126,"x":328,"y":0,"__identity":"a6acb618-5583-469f-93af-11211f50c93a","__type":"Neos\\Media\\Domain\\Model\\Adjustment\\CropImageAdjustment"}]}
-
-
-
-
- deu
- nl
-
-
- 2019-03-19T16:18:55+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:19:12+00:00
-
- Huis
- home
-
-
-
-
- deu
- lv
-
-
- 2019-03-19T16:17:16+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:20:49+00:00
-
- Mājas
- home
-
-
-
-
- deu
- de
-
-
- 2019-03-19T16:19:45+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:20:23+00:00
-
- Startseite
- home
-
-
-
-
- deu
- da
-
-
- 2019-03-19T16:18:09+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:18:47+00:00
-
- Hjem
- home
-
-
-
-
-
- deu
- de
-
-
- 2019-03-19T16:19:45+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:20:23+00:00
-
-
-
-
- dnk
- da
-
-
- 2019-04-15T04:16:33+00:00
- 2019-04-15T04:24:01+00:00
- 2019-04-15T04:24:00+00:00
-
-
-
-
- deu
- en_UK
-
-
- 2019-03-25T15:23:14+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-25T15:23:55+00:00
-
-
-
-
- deu
- da
-
-
- 2019-03-19T16:18:09+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:18:14+00:00
-
-
-
-
- deu
- fr
-
-
- 2019-03-19T16:19:22+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:19:37+00:00
-
-
-
-
- deu
- nl
-
-
- 2019-03-19T16:18:55+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:19:12+00:00
-
-
-
-
- deu
- lv
-
-
- 2019-03-19T16:17:16+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-19T16:17:20+00:00
-
-
-
-
- deu
- en_US
-
-
- 2018-06-26T23:20:17+00:00
- 2019-04-14T18:57:10+00:00
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:02:12+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T17:21:44+00:00
-
- Content node to delete
-
-
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T17:57:30+00:00
-
- switching-dimensions
- Switching dimensions
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:56:22+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:56:50+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
- translated-page
- Translated page
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:56:50+00:00
- 2019-03-21T17:57:31+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:57:19+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T17:57:30+00:00
-
- untranslated-page
- Untranslated page
-
-
-
-
-
- deu
- en_US
-
-
- 2019-03-21T17:57:19+00:00
- 2019-04-14T18:57:10+00:00
- 2019-03-21T17:57:30+00:00
-
-
-
-
-
-
-
-
-
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/switchingDimensions.e2e.js b/Tests/IntegrationTests/Fixtures/2Dimension/switchingDimensions.e2e.js
index 8c3e6abcb3..bd9b4e4c26 100644
--- a/Tests/IntegrationTests/Fixtures/2Dimension/switchingDimensions.e2e.js
+++ b/Tests/IntegrationTests/Fixtures/2Dimension/switchingDimensions.e2e.js
@@ -1,14 +1,19 @@
-import {beforeEach, subSection, checkPropTypes} from './../../utils';
+import {subSection, checkPropTypes, getUrl, adminUserOnTwoDimensionsTestSite} from './../../utils';
import {Selector} from 'testcafe';
-import {ReactSelector} from 'testcafe-react-selectors';
+import {ReactSelector, waitForReact} from 'testcafe-react-selectors';
import {
- Page
+ Page, PublishDropDown
} from './../../pageModel';
/* global fixture:true */
fixture`Switching dimensions`
- .beforeEach(beforeEach)
+ .beforeEach(async t => {
+ await t.useRole(adminUserOnTwoDimensionsTestSite);
+ await waitForReact(30000);
+ await PublishDropDown.discardAll();
+ await Page.goToPage('Home');
+ })
.afterEach(() => checkPropTypes());
test('Switching dimensions', async t => {
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/switchingSites.e2e.js b/Tests/IntegrationTests/Fixtures/2Dimension/switchingSites.e2e.js
new file mode 100644
index 0000000000..90ad6bf98b
--- /dev/null
+++ b/Tests/IntegrationTests/Fixtures/2Dimension/switchingSites.e2e.js
@@ -0,0 +1,59 @@
+import {subSection, checkPropTypes, getUrl, adminUserOnOneDimensionTestSite} from './../../utils';
+import {Selector} from 'testcafe';
+import {waitForReact} from 'testcafe-react-selectors';
+import {Page} from './../../pageModel';
+
+/* global fixture:true */
+
+fixture`Switching sites`
+ .afterEach(() => checkPropTypes());
+
+test('Switching from Neos.Test.OneDimension to Neos.Test.TwoDimensions and back', async t => {
+ subSection('Log in @ Neos.Test.OneDimension');
+ await t.navigateTo('http://onedimension.localhost:8081/neos');
+ await t
+ .typeText('#username', 'admin')
+ .typeText('#password', 'password')
+ .click('button.neos-login-btn');
+ await waitForReact(30000);
+ await Page.goToPage('Home');
+
+ subSection('Switch to Neos.Test.TwoDimensions via main menu');
+ await t.click(Selector('#neos-MenuToggler'));
+ await t.click(Selector('[href*="twodimensions"]'));
+
+ await t.expect(getUrl()).contains('twodimensions.localhost', 'Switch to Neos.Test.TwoDimensions was successful');
+
+ subSection('Switch back to Neos.Test.OneDimension via main menu');
+ await waitForReact(30000);
+ await Page.goToPage('Home');
+ await t.click(Selector('#neos-MenuToggler'));
+ await t.click(Selector('[href*="onedimension"]'));
+
+ await t.expect(getUrl()).contains('onedimension.localhost', 'Switch to Neos.Test.OneDimension was successful');
+});
+
+test('Switching from Neos.Test.TwoDimensions to Neos.Test.OneDimension and back', async t => {
+ subSection('Log in @ Neos.Test.TwoDimensions');
+ await t.navigateTo('http://twodimensions.localhost:8081/neos');
+ await t
+ .typeText('#username', 'admin')
+ .typeText('#password', 'password')
+ .click('button.neos-login-btn');
+ await waitForReact(30000);
+ await Page.goToPage('Home');
+
+ subSection('Switch to Neos.Test.OneDimension via main menu');
+ await t.click(Selector('#neos-MenuToggler'));
+ await t.click(Selector('[href*="onedimension"]'));
+
+ await t.expect(getUrl()).contains('onedimension.localhost', 'Switch to Neos.Test.OneDimension was successful');
+
+ subSection('Switch back to Neos.Test.TwoDimensions via main menu');
+ await waitForReact(30000);
+ await Page.goToPage('Home');
+ await t.click(Selector('#neos-MenuToggler'));
+ await t.click(Selector('[href*="twodimensions"]'));
+
+ await t.expect(getUrl()).contains('twodimensions.localhost', 'Switch to Neos.Test.TwoDimensions was successful');
+});
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/composer.json b/Tests/IntegrationTests/SharedNodeTypesPackage/composer.json
deleted file mode 100644
index e0af4bd7c2..0000000000
--- a/Tests/IntegrationTests/SharedNodeTypesPackage/composer.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "name": "neos/test-nodetypes",
- "description": "Some dummy nodetypes",
- "type": "neos-package",
- "require": {
- "neos/neos": "*",
- "neos/neos-ui": "*"
- },
- "extra": {
- "neos": {
- "package-key": "Neos.TestNodeTypes"
- }
- },
- "autoload": {
- "psr-4": {
- "Neos\\TestNodeTypes\\": "Classes"
- }
- }
-}
diff --git a/Tests/IntegrationTests/TestDistribution/Configuration/Settings.yaml b/Tests/IntegrationTests/TestDistribution/Configuration/Settings.yaml
index 3e4d93c451..1d980f3a28 100644
--- a/Tests/IntegrationTests/TestDistribution/Configuration/Settings.yaml
+++ b/Tests/IntegrationTests/TestDistribution/Configuration/Settings.yaml
@@ -7,12 +7,21 @@ Neos:
driver: pdo_mysql
dbname: neos
user: root
- host: 127.0.0.1
+ host: '%env(string):DB_HOST%'
password: not_a_real_password
reflection:
ignoredTags:
template: true
psalm: true
+
+ # TODO remove this temporary hack once neos is fixed.
+ object:
+ includeClasses:
+ "Neos.ContentRepository.TestSuite":
+ - "(*FAIL)"
+ "Neos.ContentRepositoryRegistry":
+ - "Neos\\\\ContentRepositoryRegistry\\\\(?!TestSuite\\\\Behavior\\\\CRRegistrySubjectProvider)"
+
Neos:
Ui:
frontendDevelopmentMode: true
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Configuration/Settings.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Configuration/Settings.yaml
new file mode 100644
index 0000000000..6bbebddb15
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Configuration/Settings.yaml
@@ -0,0 +1,32 @@
+Neos:
+ ContentRepositoryRegistry:
+ contentRepositories:
+ onedimension:
+ preset: default
+ contentDimensions:
+ language:
+ label: 'Language'
+ values:
+ 'en_US':
+ label: English (US)
+ specializations:
+ 'en_UK':
+ label: English (UK)
+ 'de':
+ label: German
+ specializations:
+ 'nl':
+ label: Dutch
+ 'fr':
+ label: French
+ 'da':
+ label: Danish
+ 'lv':
+ label: Latvian
+ Neos:
+ sites:
+ 'neos-test-onedimension':
+ contentRepository: 'onedimension'
+ contentDimensions:
+ resolver:
+ factoryClassName: Neos\Neos\FrontendRouting\DimensionResolution\Resolver\AutoUriPathResolverFactory
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json
new file mode 100644
index 0000000000..e5d089b54b
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json
@@ -0,0 +1,14 @@
+{
+ "identifier": "ee3d239e-48b0-4f99-90be-054301b91792",
+ "type": "IMAGE",
+ "title": "",
+ "copyrightNotice": "",
+ "caption": "",
+ "assetSourceIdentifier": "neos",
+ "resource": {
+ "filename": "neos_primary.png",
+ "collectionName": "persistent",
+ "mediaType": "image\/png",
+ "sha1": "aac28f51e5ca842e2646e88e7d242ac3c27e1f25"
+ }
+}
\ No newline at end of file
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json
new file mode 100644
index 0000000000..af47865fee
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json
@@ -0,0 +1,20 @@
+{
+ "identifier": "50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1",
+ "originalAssetIdentifier": "ee3d239e-48b0-4f99-90be-054301b91792",
+ "name": "",
+ "width": 126,
+ "height": 126,
+ "presetIdentifier": null,
+ "presetVariantName": null,
+ "imageAdjustments": [
+ {
+ "type": "CROP_IMAGE",
+ "properties": {
+ "x": 328,
+ "y": 0,
+ "width": 126,
+ "height": 126
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25 b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
similarity index 100%
rename from Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/events.jsonl b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/events.jsonl
new file mode 100644
index 0000000000..89cd67b6e6
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content/events.jsonl
@@ -0,0 +1,59 @@
+{"identifier":"d08644be-70fd-4f47-9078-f676bbe13544","type":"ContentStreamWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8"},"metadata":[]}
+{"identifier":"152f7ffe-b2a5-4237-beab-c4db9fa15587","type":"RootNodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"2fdbb3ea-1270-49bc-8f8b-cbfc563ef9a6","nodeTypeName":"Neos.Neos:Sites","coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"},{"language":"de"},{"language":"nl"},{"language":"fr"},{"language":"da"},{"language":"lv"}],"nodeAggregateClassification":"root"},"metadata":[]}
+{"identifier":"c977a059-ba63-4132-a190-baa6ced4f614","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"fr"},"coveredDimensionSpacePoints":[{"language":"fr"}],"parentNodeAggregateId":"2fdbb3ea-1270-49bc-8f8b-cbfc563ef9a6","nodeName":"neos-test-onedimension","initialPropertyValues":{"title":{"value":"Accueil","type":"string"},"uriPathSegment":{"value":"home","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"7e1e6a07-b80f-4cad-8fe6-519d34b86cad","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"fr"},"peerOrigin":{"language":"en_UK"},"peerCoverage":[{"language":"en_UK"}]},"metadata":[]}
+{"identifier":"37c01008-80f0-4252-8ff5-d44154cec8e7","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"en_UK"},"affectedDimensionSpacePoints":[{"language":"en_UK"}],"propertyValues":{"title":{"value":"Home","type":"string"},"uriPathSegment":{"value":"home","type":"string"},"image":{"value":{"__flow_object_type":"Neos\\Media\\Domain\\Model\\ImageVariant","__identifier":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1"},"type":"Neos\\Media\\Domain\\Model\\ImageInterface"}}},"metadata":[]}
+{"identifier":"c30068ba-258b-4393-b0de-aaf37d43fe69","type":"NodeGeneralizationVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"en_UK"},"generalizationOrigin":{"language":"en_US"},"generalizationCoverage":[{"language":"en_US"}]},"metadata":[]}
+{"identifier":"6a8125af-fcfa-45e3-8b23-bb99ae36e33e","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"en_US"},"affectedDimensionSpacePoints":[{"language":"en_US"}],"propertyValues":{"title":{"value":"Home","type":"string"},"uriPathSegment":{"value":"home","type":"string"},"image":{"value":{"__flow_object_type":"Neos\\Media\\Domain\\Model\\ImageVariant","__identifier":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1"},"type":"Neos\\Media\\Domain\\Model\\ImageInterface"}}},"metadata":[]}
+{"identifier":"8d7b8db3-9f48-494c-b7c7-5e94a830e7be","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"en_US"},"peerOrigin":{"language":"da"},"peerCoverage":[{"language":"da"}]},"metadata":[]}
+{"identifier":"ca5803cb-c243-48f9-9670-bf7deef64622","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"da"},"affectedDimensionSpacePoints":[{"language":"da"}],"propertyValues":{"title":{"value":"Hjem","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"425419f2-c507-4f84-acac-bae008eb4c01","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"da"},"peerOrigin":{"language":"lv"},"peerCoverage":[{"language":"lv"}]},"metadata":[]}
+{"identifier":"51c5ceca-360f-45b4-b6fb-b6aa8ed8c2ff","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"lv"},"affectedDimensionSpacePoints":[{"language":"lv"}],"propertyValues":{"title":{"value":"M\u0101jas","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"76ebb9af-137f-4da1-8ba3-3db36815819f","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"lv"},"peerOrigin":{"language":"nl"},"peerCoverage":[{"language":"nl"}]},"metadata":[]}
+{"identifier":"91744471-1590-4b7d-8907-749bf5d80a2c","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"nl"},"affectedDimensionSpacePoints":[{"language":"nl"}],"propertyValues":{"title":{"value":"Huis","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"899ef4e2-d6ab-4794-a24c-0ef2152d2bd5","type":"NodeGeneralizationVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"language":"nl"},"generalizationOrigin":{"language":"de"},"generalizationCoverage":[{"language":"de"}]},"metadata":[]}
+{"identifier":"ed48a226-9ea5-4439-bd3c-db8491649512","type":"NodePropertiesWereSet","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"language":"de"},"affectedDimensionSpacePoints":[{"language":"de"}],"propertyValues":{"title":{"value":"Startseite","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"297537f3-8ef7-408c-bf86-aed3f36e3dc9","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"64cdaa71-bdb1-4a07-a661-bb1787b8d077","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"en_US"},"peerOrigin":{"language":"de"},"peerCoverage":[{"language":"de"},{"language":"nl"}]},"metadata":[]}
+{"identifier":"c0b3f4e5-c3ff-4430-a906-a1f564fe1fd8","type":"NodeSpecializationVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"en_US"},"specializationOrigin":{"language":"en_UK"},"specializationCoverage":[{"language":"en_UK"}]},"metadata":[]}
+{"identifier":"4414f130-d8fc-422c-b304-708c8fec2777","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"en_UK"},"peerOrigin":{"language":"da"},"peerCoverage":[{"language":"da"}]},"metadata":[]}
+{"identifier":"3bd5280c-f131-4401-bcb0-3dd09ce3bef9","type":"NodeSpecializationVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"de"},"specializationOrigin":{"language":"nl"},"specializationCoverage":[{"language":"nl"}]},"metadata":[]}
+{"identifier":"4ffc3cc4-f657-4273-be53-88f4f74d3c62","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"nl"},"peerOrigin":{"language":"lv"},"peerCoverage":[{"language":"lv"}]},"metadata":[]}
+{"identifier":"fec825fe-47ab-4db7-8dcb-608c8530e74c","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"language":"lv"},"peerOrigin":{"language":"fr"},"peerCoverage":[{"language":"fr"}]},"metadata":[]}
+{"identifier":"74255fc9-675a-4a7d-8d67-1e03cd9d4037","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-g1gxvdbn8vq07","initialPropertyValues":{"uriPathSegment":{"value":"tree-search","type":"string"},"title":{"value":"Tree search","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"f0acc011-ec4f-42fc-b6ec-fde3f5f5581d","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"000b42ff-c9d3-4b5e-b6de-56d35832dc0e","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-0t1w0st5k6ffr","initialPropertyValues":{"uriPathSegment":{"value":"create-new-nodes","type":"string"},"title":{"value":"Create new nodes","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"766f6f5c-700b-4698-8894-8f6b25c7160b","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"5d9a965c-884b-41af-9f21-ae305c2af2af","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-8apiz7zen1sig","initialPropertyValues":{"uriPathSegment":{"value":"discarding","type":"string"},"title":{"value":"Discarding","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"5a8a66d2-15b1-4137-8ce7-8bb76a27fc20","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-w0p249o10vma4","initialPropertyValues":{"uriPathSegment":{"value":"switching-dimensions","type":"string"},"title":{"value":"Switching dimensions","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"a49501ec-91bc-4172-a3a6-1e81daf81700","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f25d1518-60c2-4842-b2b0-bbd449697e77","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-xel5da127kla5","initialPropertyValues":{"uriPathSegment":{"value":"select-boxes","type":"string"},"title":{"value":"Select Boxes","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"1b83da25-010b-447e-b621-b145eaa1c5cc","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-knm2pltb5454z","initialPropertyValues":{"uriPathSegment":{"value":"tree-multiselect","type":"string"},"title":{"value":"Tree multiselect","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"866cec45-ae52-41f2-877e-3e533c0fc534","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"53c72be8-befb-409f-b2b6-ad54b68cbe05","nodeTypeName":"Neos.TestNodeTypes:Content.Headline","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","nodeName":"node-chdxek8m9mgp8","initialPropertyValues":{"title":{"value":"Content node to delete","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"9a11d10c-c3b6-41b7-9955-a66641b6e09a","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"d995d0af-2716-cbf0-a9a0-4547c87980d1","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"000b42ff-c9d3-4b5e-b6de-56d35832dc0e","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"2d239a21-4201-4b9c-9ddd-cd5fa936c650","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"edee62d3-4561-4c0c-bce0-41324b0df5db","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"000b42ff-c9d3-4b5e-b6de-56d35832dc0e","nodeName":"node-32bltfl4ugqi1","initialPropertyValues":{"uriPathSegment":{"value":"link-target","type":"string"},"title":{"value":"Link target","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"80f77eb0-d2d9-4d1b-8f27-7d8167426fcd","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"794b2be9-805d-fe98-e173-ee015811d3fc","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"edee62d3-4561-4c0c-bce0-41324b0df5db","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"6c9ed736-f124-43d9-a897-1d73abf279ec","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"9344756a-a5d1-9de0-0627-a701b27e62bf","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"5d9a965c-884b-41af-9f21-ae305c2af2af","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"26f906ac-12bd-4807-999a-f4f228c93a81","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"6c66e888-70ba-4e6c-838d-a13b642505ac","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"5d9a965c-884b-41af-9f21-ae305c2af2af","nodeName":"node-bezmi9v7mq8gm","initialPropertyValues":{"uriPathSegment":{"value":"node-to-delete","type":"string"},"title":{"value":"Node to delete","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"d3569ac5-f207-4559-864e-0ba01eed6382","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"868eb7da-ab60-15ef-2dc0-472dd8c346cd","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"6c66e888-70ba-4e6c-838d-a13b642505ac","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"21642ec4-9e43-49ac-bd71-a27b44e2813b","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f4be0477-85ad-4e7b-bc6d-b4f8d5da448c","nodeTypeName":"Neos.TestNodeTypes:Content.Headline","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"868eb7da-ab60-15ef-2dc0-472dd8c346cd","nodeName":"node-1jek82tofuzch","initialPropertyValues":{"title":{"value":"I'll be deleted<\/h1>","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"0a3ae1e5-cd04-40f6-8c19-5aec91064320","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"487ef58b-7d6d-9e3f-b6ee-3552784ac0eb","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"c467d473-c42c-418f-9b42-9a04502e180a","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"ae7baddc-656a-4e57-9886-17d8783dae65","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeName":"node-r6au40dkxh5k6","initialPropertyValues":{"uriPathSegment":{"value":"not-searched-page","type":"string"},"title":{"value":"Not searched page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"a6969708-7689-42e9-ab39-eb869fd7891a","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"ecb3c490-e4ce-450b-ba59-584615d3ef81","nodeTypeName":"Neos.Neos:Shortcut","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeName":"node-2oekw9xt2aqzh","initialPropertyValues":{"uriPathSegment":{"value":"not-searched-shortcut","type":"string"},"targetMode":{"value":"firstChildNode","type":"string"},"title":{"value":"Not searched shortcut","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"75190929-8ead-4d22-9e4c-57f9b5f52c5e","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"18b037dc-c06c-4d96-a991-893256a32e89","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeName":"node-a8hbzgg4vij8o","initialPropertyValues":{"uriPathSegment":{"value":"searchme-page","type":"string"},"title":{"value":"Searchme page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"d8bcef2d-d054-44ae-9c92-a56070954add","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"5a056a16-1bd6-4fca-b586-108e2130d55a","nodeTypeName":"Neos.Neos:Shortcut","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ce9e7dd2-2f7e-4cd7-94dc-e2dbd5bdec73","nodeName":"node-2as0mtmis37be","initialPropertyValues":{"uriPathSegment":{"value":"searchme-shortcut","type":"string"},"targetMode":{"value":"firstChildNode","type":"string"},"title":{"value":"Searchme shortcut","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"1078453a-67a7-40b7-abde-6d4fa1e3ce85","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"eb217a26-d864-d456-822d-7476cef3e215","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"18b037dc-c06c-4d96-a991-893256a32e89","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"47f38ec7-69dc-4ab9-937c-b58b2450ffe5","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"e22df8b3-cc42-b6a1-184a-7778d1bf2750","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"ae7baddc-656a-4e57-9886-17d8783dae65","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"61ebdba4-8097-43be-910d-f44e809e1111","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"74263f87-2e7c-c916-c122-6a6cf4704f22","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"ddfa4633-add1-4bb4-86be-033cfd7fce84","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"1efe592f-2e2f-4737-b212-bbb42626e848","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeName":"node-18qsaeidy6765","initialPropertyValues":{"uriPathSegment":{"value":"a","type":"string"},"title":{"value":"MultiA","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"7d859cb6-bb96-481b-999c-1f0e0f1914c1","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"5b0d6ac0-40ab-47e8-b79e-39de6c0700df","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeName":"node-e8tw6sparbtp3","initialPropertyValues":{"uriPathSegment":{"value":"b","type":"string"},"title":{"value":"MultiB","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"7039e6be-dea2-48bb-abc6-605fdb7be762","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"84eb0340-ba34-4fdb-98b1-da503f967121","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeName":"node-oml0cxaompt29","initialPropertyValues":{"uriPathSegment":{"value":"c","type":"string"},"title":{"value":"MultiC","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"30c8c801-884e-46f1-890c-8c9ee331300b","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f6bf1a78-9e2b-45ba-887c-9b7e43890a44","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"4fbd958a-3b24-4001-8342-5ceaf0750ffb","nodeName":"node-szu9u5yzpleck","initialPropertyValues":{"uriPathSegment":{"value":"d","type":"string"},"title":{"value":"MultiD","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"434cc297-b87c-43a9-b3c8-125a4147b8af","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"41dbc005-0327-8a86-0f98-8531112577b8","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"1efe592f-2e2f-4737-b212-bbb42626e848","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"2fab7955-21fe-421d-9809-64e21ca6c5b9","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"2969680f-75ff-13b6-efbd-f5a01fbb73e5","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"5b0d6ac0-40ab-47e8-b79e-39de6c0700df","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"a061f2ae-6fdd-49a4-ae2c-3f6e9ba57fdc","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"2ff43bf3-a953-d69d-0103-3ce80568e642","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"84eb0340-ba34-4fdb-98b1-da503f967121","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"7345ce26-df70-45c9-b464-f1d6c6d86959","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"f59c6680-06a4-4bc5-e563-9605bd4add99","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f6bf1a78-9e2b-45ba-887c-9b7e43890a44","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"afb6efc4-7688-4d2a-a0e1-7c9ac53616ec","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"e91e184f-eb71-4b54-90dc-e8d8dd997f51","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"d483b7ad-1cc0-47e1-b70c-93906c060ae3","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"45270070-0d7c-4a89-90a8-a43ef454edf1","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"node-8ws6hkn4o36q1","initialPropertyValues":{"uriPathSegment":{"value":"translated-page","type":"string"},"title":{"value":"Translated page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"9f60f1f3-b053-4854-9a04-8569b00f7649","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"555c9f80-7682-4916-a4c3-851ab5ea0559","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"node-f8e3ze7jvbxkl","initialPropertyValues":{"uriPathSegment":{"value":"untranslated-page","type":"string"},"title":{"value":"Untranslated page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"01b8a28e-a2ed-4f8f-bad9-1354965a2d8c","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"d1d3bfdc-ce6a-cf2e-4eeb-02c11bbe87f4","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"45270070-0d7c-4a89-90a8-a43ef454edf1","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"c43fa247-68c4-4dd9-88f3-15e169680bfc","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"a54789f4-26df-de1d-c5dc-18a15556b40b","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"555c9f80-7682-4916-a4c3-851ab5ea0559","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"a30c607a-8767-44c7-b2a6-3d0b97bd478c","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"1fd64db3-c35f-4604-ad25-de0ef6d2bb32","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f25d1518-60c2-4842-b2b0-bbd449697e77","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"c4a26082-8fac-4f7b-bad8-d07bfa68e9dd","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"7ebcc393-4120-4d29-a0d8-8bc708ecb3f8","nodeAggregateId":"3938292e-bf62-472a-a701-baf6e9ff395f","nodeTypeName":"Neos.TestNodeTypes:Document.SelectBoxTestPage.OpensAboveInInspector","originDimensionSpacePoint":{"language":"en_US"},"coveredDimensionSpacePoints":[{"language":"en_US"},{"language":"en_UK"}],"parentNodeAggregateId":"f25d1518-60c2-4842-b2b0-bbd449697e77","nodeName":"node-hg78tr7bvmmn4r","initialPropertyValues":{"uriPathSegment":{"value":"select-box-opens-above-in-inspector","type":"string"},"title":{"value":"SelectBox opens above in Inspector","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/composer.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/composer.json
similarity index 56%
rename from Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/composer.json
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/composer.json
index fa7065d535..9e82c50165 100644
--- a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/composer.json
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.OneDimension/composer.json
@@ -1,6 +1,6 @@
{
- "name": "neos/test-site",
- "description": "A Neos website",
+ "name": "neos/test-onedimension",
+ "description": "A Neos website with one dimension",
"type": "neos-site",
"require": {
"neos/neos": "*",
@@ -9,7 +9,7 @@
},
"extra": {
"neos": {
- "package-key": "Neos.TestSite"
+ "package-key": "Neos.Test.OneDimension"
}
}
}
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Configuration/Settings.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Configuration/Settings.yaml
new file mode 100644
index 0000000000..bc751b79d0
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Configuration/Settings.yaml
@@ -0,0 +1,93 @@
+Neos:
+ ContentRepositoryRegistry:
+ contentRepositories:
+ twodimensions:
+ preset: default
+ contentDimensions:
+ country:
+ label: 'Country'
+ icon: 'icon-globe'
+ values:
+ 'deu':
+ label: 'Germany'
+ specializations:
+ 'aut':
+ label: 'Austria'
+ 'lux':
+ label: 'Luxembourg'
+ 'dnk':
+ label: 'Denmark'
+
+ 'language':
+ label: 'Language'
+ icon: icon-language
+ values:
+ 'en_US':
+ label: 'English (US)'
+ constraints:
+ 'country':
+ '*': false
+ 'deu': true
+ 'aut': true
+ specializations:
+ 'en_UK':
+ label: 'English (UK)'
+ 'de':
+ label: German
+ constraints:
+ 'country':
+ '*': false
+ 'deu': true
+ 'aut': true
+ 'lux': true
+ 'fr':
+ label: French
+ constraints:
+ 'country':
+ '*': false
+ 'deu': true
+ 'aut': true
+ 'nl':
+ label: Dutch
+ constraints:
+ 'country':
+ '*': false
+ 'deu': true
+ 'aut': true
+ 'da':
+ label: Danish
+ constraints:
+ 'country':
+ '*': false
+ 'dnk': true
+ 'lv':
+ label: Latvian
+ constraints:
+ 'country':
+ '*': false
+ 'deu': true
+ 'aut': true
+ Neos:
+ sites:
+ 'neos-test-twodimensions':
+ contentRepository: 'twodimensions'
+ contentDimensions:
+ resolver:
+ factoryClassName: Neos\Neos\FrontendRouting\DimensionResolution\Resolver\UriPathResolverFactory
+ options:
+ segments:
+ - dimensionIdentifier: 'country'
+ dimensionValueMapping:
+ 'deu': 'deu'
+ 'aut': 'aut'
+ 'lux': 'lux'
+ 'dnk': 'dnk'
+ - dimensionIdentifier: 'language'
+ dimensionValueMapping:
+ 'en_US': 'en'
+ 'en_UK': 'uk'
+ 'de': 'de'
+ 'fr': 'fr'
+ 'nl': 'nl'
+ 'da': 'da'
+ 'lv': 'lv'
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json
new file mode 100644
index 0000000000..e5d089b54b
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/Assets/ee3d239e-48b0-4f99-90be-054301b91792.json
@@ -0,0 +1,14 @@
+{
+ "identifier": "ee3d239e-48b0-4f99-90be-054301b91792",
+ "type": "IMAGE",
+ "title": "",
+ "copyrightNotice": "",
+ "caption": "",
+ "assetSourceIdentifier": "neos",
+ "resource": {
+ "filename": "neos_primary.png",
+ "collectionName": "persistent",
+ "mediaType": "image\/png",
+ "sha1": "aac28f51e5ca842e2646e88e7d242ac3c27e1f25"
+ }
+}
\ No newline at end of file
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json
new file mode 100644
index 0000000000..af47865fee
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/ImageVariants/50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1.json
@@ -0,0 +1,20 @@
+{
+ "identifier": "50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1",
+ "originalAssetIdentifier": "ee3d239e-48b0-4f99-90be-054301b91792",
+ "name": "",
+ "width": 126,
+ "height": 126,
+ "presetIdentifier": null,
+ "presetVariantName": null,
+ "imageAdjustments": [
+ {
+ "type": "CROP_IMAGE",
+ "properties": {
+ "x": 328,
+ "y": 0,
+ "width": 126,
+ "height": 126
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25 b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
similarity index 100%
rename from Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/Resources/aac28f51e5ca842e2646e88e7d242ac3c27e1f25
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/events.jsonl b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/events.jsonl
new file mode 100644
index 0000000000..eb5e838523
--- /dev/null
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content/events.jsonl
@@ -0,0 +1,29 @@
+{"identifier":"0ebdfc06-3698-4ddb-83f5-109023213b84","type":"ContentStreamWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b"},"metadata":[]}
+{"identifier":"55ea0055-eda8-4077-b3b0-2c2d599a8f27","type":"RootNodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"2fbc3faf-663a-4ef0-b586-7b2c1c7fd342","nodeTypeName":"Neos.Neos:Sites","coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"deu","language":"de"},{"country":"deu","language":"fr"},{"country":"deu","language":"nl"},{"country":"deu","language":"lv"},{"country":"aut","language":"en_US"},{"country":"aut","language":"en_UK"},{"country":"aut","language":"de"},{"country":"aut","language":"fr"},{"country":"aut","language":"nl"},{"country":"aut","language":"lv"},{"country":"lux","language":"en_UK"},{"country":"lux","language":"de"},{"country":"dnk","language":"en_UK"},{"country":"dnk","language":"da"}],"nodeAggregateClassification":"root"},"metadata":[]}
+{"identifier":"a9fdb629-97ce-4321-bbec-a1dbf27530fd","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"country":"dnk","language":"da"},"coveredDimensionSpacePoints":[{"country":"dnk","language":"da"}],"parentNodeAggregateId":"2fbc3faf-663a-4ef0-b586-7b2c1c7fd342","nodeName":"neos-test-twodimensions","initialPropertyValues":{"title":{"value":"Home","type":"string"},"uriPathSegment":{"value":"home","type":"string"},"image":{"value":{"__flow_object_type":"Neos\\Media\\Domain\\Model\\ImageVariant","__identifier":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1"},"type":"Neos\\Media\\Domain\\Model\\ImageInterface"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"06ce4e00-bede-4d76-a6b9-02c646ce933b","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"dnk","language":"da"},"peerOrigin":{"country":"deu","language":"lv"},"peerCoverage":[{"country":"deu","language":"lv"},{"country":"aut","language":"lv"}]},"metadata":[]}
+{"identifier":"c8b2be8f-fd74-4ea5-b2f8-35a3876d11a9","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"lv"},"affectedDimensionSpacePoints":[{"country":"deu","language":"lv"},{"country":"aut","language":"lv"}],"propertyValues":{"title":{"value":"M\u0101jas","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"c2c89695-2e12-41ac-bc4a-9b197b67a6f8","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"deu","language":"lv"},"peerOrigin":{"country":"deu","language":"en_US"},"peerCoverage":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}]},"metadata":[]}
+{"identifier":"9a7f0b96-edf3-43f0-95ab-41dc553e6238","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"affectedDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"propertyValues":{"title":{"value":"Home","type":"string"},"uriPathSegment":{"value":"home","type":"string"},"image":{"value":{"__flow_object_type":"Neos\\Media\\Domain\\Model\\ImageVariant","__identifier":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1"},"type":"Neos\\Media\\Domain\\Model\\ImageInterface"}}},"metadata":[]}
+{"identifier":"8895d087-a855-485b-a0c5-fc2bd0953468","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"deu","language":"en_US"},"peerOrigin":{"country":"deu","language":"nl"},"peerCoverage":[{"country":"deu","language":"nl"},{"country":"aut","language":"nl"}]},"metadata":[]}
+{"identifier":"b1c595ba-ecf2-48cf-bd58-b14b2823b878","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"nl"},"affectedDimensionSpacePoints":[{"country":"deu","language":"nl"},{"country":"aut","language":"nl"}],"propertyValues":{"title":{"value":"Huis","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"17735c4f-8a79-4224-87c7-31182ddb04b1","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"deu","language":"nl"},"peerOrigin":{"country":"deu","language":"de"},"peerCoverage":[{"country":"deu","language":"de"},{"country":"aut","language":"de"},{"country":"lux","language":"de"}]},"metadata":[]}
+{"identifier":"aa8cc064-78f1-4bfc-b781-9c1c0782b0a9","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"de"},"affectedDimensionSpacePoints":[{"country":"deu","language":"de"},{"country":"aut","language":"de"},{"country":"lux","language":"de"}],"propertyValues":{"title":{"value":"Startseite","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"acc19ed2-3409-4801-8579-7cefdd967908","type":"NodeSpecializationVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"deu","language":"en_US"},"specializationOrigin":{"country":"deu","language":"en_UK"},"specializationCoverage":[{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}]},"metadata":[]}
+{"identifier":"406b7e68-d98d-4bd1-bf68-b728ab2b539f","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"en_UK"},"affectedDimensionSpacePoints":[{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"propertyValues":{"title":{"value":"Home","type":"string"},"uriPathSegment":{"value":"home","type":"string"},"image":{"value":{"__flow_object_type":"Neos\\Media\\Domain\\Model\\ImageVariant","__identifier":"50cd4a3e-1cc3-4bbb-b2ab-919abb4011f1"},"type":"Neos\\Media\\Domain\\Model\\ImageInterface"}}},"metadata":[]}
+{"identifier":"7075a98d-ebe8-4035-92b9-8dc3e9e09098","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","sourceOrigin":{"country":"deu","language":"en_UK"},"peerOrigin":{"country":"deu","language":"fr"},"peerCoverage":[{"country":"deu","language":"fr"},{"country":"aut","language":"fr"}]},"metadata":[]}
+{"identifier":"5cbcac8a-35e1-47e5-a55c-3392ddeb0ff3","type":"NodePropertiesWereSet","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","originDimensionSpacePoint":{"country":"deu","language":"fr"},"affectedDimensionSpacePoints":[{"country":"deu","language":"fr"},{"country":"aut","language":"fr"}],"propertyValues":{"title":{"value":"Accueil","type":"string"},"uriPathSegment":{"value":"home","type":"string"}}},"metadata":[]}
+{"identifier":"a4a517b0-cc81-4840-9fb4-8dc501e57093","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"country":"deu","language":"lv"},"coveredDimensionSpacePoints":[{"country":"deu","language":"lv"},{"country":"aut","language":"lv"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"bee965e3-c5e9-401d-ae17-cc21699b4f1d","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"lv"},"peerOrigin":{"country":"deu","language":"fr"},"peerCoverage":[{"country":"deu","language":"fr"},{"country":"aut","language":"fr"}]},"metadata":[]}
+{"identifier":"68479aef-43d6-4c9b-9af6-5e582c6fbcdf","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"fr"},"peerOrigin":{"country":"deu","language":"en_US"},"peerCoverage":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}]},"metadata":[]}
+{"identifier":"2c399044-3a08-4465-ae49-98486029dc8d","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"en_US"},"peerOrigin":{"country":"dnk","language":"da"},"peerCoverage":[{"country":"dnk","language":"da"}]},"metadata":[]}
+{"identifier":"6b9abd14-e993-49c7-a255-d32024fc6e8b","type":"NodeSpecializationVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"en_US"},"specializationOrigin":{"country":"deu","language":"en_UK"},"specializationCoverage":[{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}]},"metadata":[]}
+{"identifier":"07f9b89a-704e-4f66-80d1-b5670ccbd110","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"en_UK"},"peerOrigin":{"country":"deu","language":"nl"},"peerCoverage":[{"country":"deu","language":"nl"},{"country":"aut","language":"nl"}]},"metadata":[]}
+{"identifier":"42a96bec-0f04-43ac-bbc7-be9baedbde2e","type":"NodePeerVariantWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","sourceOrigin":{"country":"deu","language":"nl"},"peerOrigin":{"country":"deu","language":"de"},"peerCoverage":[{"country":"deu","language":"de"},{"country":"aut","language":"de"},{"country":"lux","language":"de"}]},"metadata":[]}
+{"identifier":"e1263785-b57d-4269-929f-670da4279cf0","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"f676459d-ca77-44bc-aeea-44114814c279","nodeName":"node-w0p249o10vma4","initialPropertyValues":{"uriPathSegment":{"value":"switching-dimensions","type":"string"},"title":{"value":"Switching dimensions","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"58459bb0-6ac4-4f32-9287-e2468bdbdccc","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"53c72be8-befb-409f-b2b6-ad54b68cbe05","nodeTypeName":"Neos.TestNodeTypes:Content.Headline","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"6c302e0e-1d54-4697-a7ec-88d4e0d010cf","nodeName":"node-chdxek8m9mgp8","initialPropertyValues":{"title":{"value":"Content node to delete","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"e2d2f6a6-67c4-48dd-a4f1-1026ac3d0065","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"e91e184f-eb71-4b54-90dc-e8d8dd997f51","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"0ee5bb06-c2a7-473e-8dc4-c3faa515d0d6","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"45270070-0d7c-4a89-90a8-a43ef454edf1","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"node-8ws6hkn4o36q1","initialPropertyValues":{"uriPathSegment":{"value":"translated-page","type":"string"},"title":{"value":"Translated page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"d82b51b6-ffcf-4119-a279-80b137db438d","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"555c9f80-7682-4916-a4c3-851ab5ea0559","nodeTypeName":"Neos.TestNodeTypes:Document.Page","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"af9db7c2-3cf0-4091-978e-1a0f81766242","nodeName":"node-f8e3ze7jvbxkl","initialPropertyValues":{"uriPathSegment":{"value":"untranslated-page","type":"string"},"title":{"value":"Untranslated page","type":"string"}},"nodeAggregateClassification":"regular","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"6758939c-0091-43a0-9cee-16228b6ffdf9","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"d1d3bfdc-ce6a-cf2e-4eeb-02c11bbe87f4","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"45270070-0d7c-4a89-90a8-a43ef454edf1","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
+{"identifier":"3db13d5f-9a7d-4e98-8020-ac37bdc4ad92","type":"NodeAggregateWithNodeWasCreated","payload":{"contentStreamId":"ead48ed5-f915-44bd-8df8-29475c8b145b","nodeAggregateId":"a54789f4-26df-de1d-c5dc-18a15556b40b","nodeTypeName":"Neos.Neos:ContentCollection","originDimensionSpacePoint":{"country":"deu","language":"en_US"},"coveredDimensionSpacePoints":[{"country":"deu","language":"en_US"},{"country":"aut","language":"en_US"},{"country":"deu","language":"en_UK"},{"country":"aut","language":"en_UK"},{"country":"lux","language":"en_UK"}],"parentNodeAggregateId":"555c9f80-7682-4916-a4c3-851ab5ea0559","nodeName":"main","initialPropertyValues":[],"nodeAggregateClassification":"tethered","succeedingNodeAggregateId":null},"metadata":[]}
diff --git a/Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Fusion/Root.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Fusion/Root.fusion
similarity index 100%
rename from Tests/IntegrationTests/Fixtures/2Dimension/SitePackage/Resources/Private/Fusion/Root.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Fusion/Root.fusion
diff --git a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/composer.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/composer.json
similarity index 56%
rename from Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/composer.json
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/composer.json
index fa7065d535..82d376240b 100644
--- a/Tests/IntegrationTests/Fixtures/1Dimension/SitePackage/composer.json
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.Test.TwoDimensions/composer.json
@@ -1,6 +1,6 @@
{
- "name": "neos/test-site",
- "description": "A Neos website",
+ "name": "neos/test-twodimensions",
+ "description": "A Neos website with two dimensions",
"type": "neos-site",
"require": {
"neos/neos": "*",
@@ -9,7 +9,7 @@
},
"extra": {
"neos": {
- "package-key": "Neos.TestSite"
+ "package-key": "Neos.Test.TwoDimensions"
}
}
}
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Classes/DataSources/NodeWithDependingPropertiesDataSource.php b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Classes/DataSources/NodeWithDependingPropertiesDataSource.php
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Classes/DataSources/NodeWithDependingPropertiesDataSource.php
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Classes/DataSources/NodeWithDependingPropertiesDataSource.php
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Classes/NodeCreationHandler/ImagePropertyNodeCreationHandler.php b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Classes/NodeCreationHandler/ImagePropertyNodeCreationHandler.php
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Classes/NodeCreationHandler/ImagePropertyNodeCreationHandler.php
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Classes/NodeCreationHandler/ImagePropertyNodeCreationHandler.php
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Configuration/Settings.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Configuration/Settings.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Configuration/Settings.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Configuration/Settings.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Container.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Container.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Container.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Container.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Headline.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Headline.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Headline.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Headline.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Image.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Image.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Image.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Image.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/InlineHeadline.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/InlineHeadline.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/InlineHeadline.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/InlineHeadline.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/NodeWithDependingProperties.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/NodeWithDependingProperties.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/NodeWithDependingProperties.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/NodeWithDependingProperties.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Text.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Text.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Content/Text.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Content/Text.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/Page.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/Page.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/Page.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/Page.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/PageWithImage.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/PageWithImage.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/PageWithImage.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/PageWithImage.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensAbove.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensAbove.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensAbove.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensAbove.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensAboveInInspector.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensAboveInInspector.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensAboveInInspector.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensAboveInInspector.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensBelowAndBreaksOut.yaml b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensBelowAndBreaksOut.yaml
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/NodeTypes/Document/SelectBoxTestPage/OpensBelowAndBreaksOut.yaml
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/NodeTypes/Document/SelectBoxTestPage/OpensBelowAndBreaksOut.yaml
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Component/Navigation/Navigation.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Component/Navigation/Navigation.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Component/Navigation/Navigation.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Component/Navigation/Navigation.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Container/Container.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Container/Container.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Container/Container.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Container/Container.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Headline/Headline.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Headline/Headline.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Headline/Headline.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Headline/Headline.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Image/Image.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Image/Image.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Image/Image.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Image/Image.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/InlineHeadline/InlineHeadline.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/InlineHeadline/InlineHeadline.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/InlineHeadline/InlineHeadline.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/InlineHeadline/InlineHeadline.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/NodeWithDependingProperties/NodeWithDependingProperties.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/NodeWithDependingProperties/NodeWithDependingProperties.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/NodeWithDependingProperties/NodeWithDependingProperties.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/NodeWithDependingProperties/NodeWithDependingProperties.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Text/Text.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Text/Text.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Content/Text/Text.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Content/Text/Text.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/Page/Page.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/Page/Page.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/Page/Page.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/Page/Page.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/PageWithImage/PageWithImage.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/PageWithImage/PageWithImage.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/PageWithImage/PageWithImage.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/PageWithImage/PageWithImage.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveIn.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveIn.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveIn.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveIn.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveInInspector.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveInInspector.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveInInspector.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Document/SelectBoxTestPage/OpensAboveInInspector.fusion
diff --git a/Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Root.fusion b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Root.fusion
similarity index 100%
rename from Tests/IntegrationTests/SharedNodeTypesPackage/Resources/Private/Fusion/Root.fusion
rename to Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/Resources/Private/Fusion/Root.fusion
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/composer.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/composer.json
index 47c0164f23..e0af4bd7c2 100644
--- a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/composer.json
+++ b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestNodeTypes/composer.json
@@ -3,8 +3,8 @@
"description": "Some dummy nodetypes",
"type": "neos-package",
"require": {
- "neos/neos-ui": "*",
- "neos/fusion-afx": "*"
+ "neos/neos": "*",
+ "neos/neos-ui": "*"
},
"extra": {
"neos": {
@@ -12,8 +12,8 @@
}
},
"autoload": {
- "psr-4": {
- "Neos\\TestNodeTypes\\": "Classes"
- }
+ "psr-4": {
+ "Neos\\TestNodeTypes\\": "Classes"
+ }
}
}
diff --git a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestSite/composer.json b/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestSite/composer.json
deleted file mode 100644
index 6b391192c8..0000000000
--- a/Tests/IntegrationTests/TestDistribution/DistributionPackages/Neos.TestSite/composer.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "neos/test-site",
- "description": "A dummy site package that will be replaced by fixtures during tests",
- "type": "neos-site",
- "require": {
- "neos/neos": "*",
- "neos/neos-ui": "*",
- "neos/fusion-afx": "*"
- },
- "extra": {
- "neos": {
- "package-key": "Neos.TestSite"
- }
- }
-}
diff --git a/Tests/IntegrationTests/TestDistribution/composer.json b/Tests/IntegrationTests/TestDistribution/composer.json
index 41fc86012c..20704ec76d 100644
--- a/Tests/IntegrationTests/TestDistribution/composer.json
+++ b/Tests/IntegrationTests/TestDistribution/composer.json
@@ -6,19 +6,33 @@
"vendor-dir": "Packages/Libraries",
"bin-dir": "bin",
"allow-plugins": {
- "neos/composer-plugin": true
+ "neos/composer-plugin": true,
+ "cweagans/composer-patches": true
}
},
- "minimum-stability": "dev",
"require": {
- "neos/neos-ui": "8.3.x-dev",
- "neos/fusion-afx": "*",
- "neos/test-site": "@dev",
- "neos/test-nodetypes": "@dev"
+ "neos/flow-development-collection": "9.0.x-dev as 9.0",
+
+ "neos/neos-development-collection": "9.0.x-dev as 9.0",
+ "neos/eventstore": "dev-main",
+ "neos/eventstore-doctrineadapter": "dev-main",
+
+ "neos/neos-ui": "9.0.x-dev as 9.0",
+ "neos/neos-ui-compiled": "9.0.x-dev as 9.0",
+
+ "neos/test-onedimension": "@dev",
+ "neos/test-twodimensions": "@dev",
+ "neos/test-nodetypes": "@dev",
+
+ "cweagans/composer-patches": "^1.7.3"
},
"require-dev": {
"neos/buildessentials": "@dev",
- "phpunit/phpunit": "^8.1"
+ "phpunit/phpunit": "^9.0"
+ },
+ "extra": {
+ "patches": {
+ }
},
"repositories": {
"distribution": {
diff --git a/Tests/IntegrationTests/docker-compose.yaml b/Tests/IntegrationTests/docker-compose.yaml
index 51125de99a..42a22e5904 100644
--- a/Tests/IntegrationTests/docker-compose.yaml
+++ b/Tests/IntegrationTests/docker-compose.yaml
@@ -2,22 +2,27 @@ version: "3.4"
services:
php:
- image: thecodingmachine/php:8.0-v4-cli-node16
+ image: thecodingmachine/php:8.2-v4-cli-node16
command: tail -f /dev/null
ports:
- 8081:8081
volumes:
+ - app:/usr/src/app
- composer_cache:/home/circleci/.composer/cache
+ # add Neos Ui root as cached read-only volume that will be later symlinked into TestDistribution/Packages/
+ - ../../.:/usr/src/neos-ui:cached,ro
environment:
# Enable GD
PHP_EXTENSION_GD: 1
COMPOSER_CACHE_DIR: /home/circleci/.composer/cache
+ DB_HOST: db
db:
- image: mysql:8
+ image: mariadb:10.4
environment:
MYSQL_DATABASE: neos
MYSQL_ROOT_PASSWORD: not_a_real_password
volumes:
+ app:
composer_cache:
diff --git a/Tests/IntegrationTests/e2e-docker.sh b/Tests/IntegrationTests/e2e-docker.sh
index 5dbb873c8d..bcec06b019 100755
--- a/Tests/IntegrationTests/e2e-docker.sh
+++ b/Tests/IntegrationTests/e2e-docker.sh
@@ -18,9 +18,12 @@ echo "##########################################################################
dc down
dc up -d
dc exec -T php bash <<-'BASH'
- rm -rf /usr/src/app/*
+ # WHY: change owner for composer cache for docker execution
+ sudo chown -R docker:docker /home/circleci/
BASH
-docker cp $(pwd)/Tests/IntegrationTests/. $(dc ps -q php):/usr/src/app
+#echo docker cp $(pwd)/Tests/IntegrationTests/TestDistribution/composer.json $(dc ps -q php):/usr/src/app/composer.json
+#docker cp $(pwd)/Tests/IntegrationTests/TestDistribution/composer.json $(dc ps -q php):/usr/src/app/composer.json
+
sleep 2
echo ""
@@ -29,10 +32,13 @@ echo "# Install dependencies...
echo "#############################################################################"
dc exec -T php bash <<-'BASH'
cd /usr/src/app
+ mkdir -p Configuration
sudo chown -R docker:docker .
- # WHY: change owner for composer cache for docker execution
- sudo chown -R docker:docker /home/circleci/
- cd TestDistribution
+
+ ln -sf /usr/src/neos-ui/Tests/IntegrationTests/TestDistribution/composer.json /usr/src/app/composer.json
+ ln -sf /usr/src/neos-ui/Tests/IntegrationTests/TestDistribution/Configuration/Settings.yaml /usr/src/app/Configuration/Settings.yaml
+ ln -sfn /usr/src/neos-ui/Tests/IntegrationTests/TestDistribution/DistributionPackages /usr/src/app/DistributionPackages
+
composer install
BASH
@@ -40,16 +46,30 @@ echo ""
echo "#############################################################################"
echo "# Initialize Neos... #"
echo "#############################################################################"
-docker cp $(pwd)/. $(dc ps -q php):/usr/src/app/TestDistribution/Packages/Application/neos-ui
dc exec -T php bash <<-'BASH'
- cd TestDistribution
rm -rf Packages/Application/Neos.Neos.Ui
- mv Packages/Application/neos-ui Packages/Application/Neos.Neos.Ui
- sed -i 's/host: 127.0.0.1/host: db/g' Configuration/Settings.yaml
+ ln -s /usr/src/neos-ui /usr/src/app/Packages/Application/Neos.Neos.Ui
+
./flow flow:cache:flush
./flow flow:cache:warmup
./flow doctrine:migrate
./flow user:create --username=admin --password=password --first-name=John --last-name=Doe --roles=Administrator || true
+
+ ./flow cr:setup --content-repository onedimension
+ ./flow site:create neos-test-onedimension Neos.Test.OneDimension Neos.TestNodeTypes:Document.Page
+ ./flow domain:add neos-test-onedimension onedimension.localhost --port 8081
+ # TODO: Replace with "--assume-yes" flag once "./flow cr:prune" has one
+ printf "y\n" | ./flow cr:prune --content-repository onedimension
+ ./flow cr:import --content-repository onedimension --path ./DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content
+
+ ./flow cr:setup --content-repository twodimensions
+ ./flow site:create neos-test-twodimensions Neos.Test.TwoDimensions Neos.TestNodeTypes:Document.Page
+ ./flow domain:add neos-test-twodimensions twodimensions.localhost --port 8081
+ # TODO: Replace with "--assume-yes" flag once "./flow cr:prune" has one
+ printf "y\n" | ./flow cr:prune --content-repository twodimensions
+ ./flow cr:import --content-repository twodimensions --path ./DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content
+
+ ./flow resource:publish
BASH
echo ""
@@ -57,7 +77,6 @@ echo "##########################################################################
echo "# Start Flow Server... #"
echo "#############################################################################"
dc exec -T php bash <<-'BASH'
- cd TestDistribution
./flow server:run --port 8081 --host 0.0.0.0 &
BASH
@@ -65,35 +84,5 @@ echo ""
echo "#############################################################################"
echo "# Run E2E tests... #"
echo "#############################################################################"
-for fixture in $(pwd)/Tests/IntegrationTests/Fixtures/*/; do
- echo ""
- echo "########################################"
- echo "# Fixture '$(basename $fixture)'"
- echo "########################################"
- dc exec -T php bash <<-BASH
- mkdir -p ./TestDistribution/DistributionPackages
-
- rm -rf ./TestDistribution/DistributionPackages/Neos.TestNodeTypes
- ln -s "../../SharedNodeTypesPackage" ./TestDistribution/DistributionPackages/Neos.TestNodeTypes
-
- rm -rf ./TestDistribution/DistributionPackages/Neos.TestSite
- ln -s "../../Fixtures/$(basename $fixture)/SitePackage" ./TestDistribution/DistributionPackages/Neos.TestSite
-
- # TODO: optimize this
- cd TestDistribution
- composer reinstall neos/test-nodetypes
- composer reinstall neos/test-site
- ./flow flow:cache:flush --force
- ./flow flow:cache:warmup
- ./flow configuration:show --path Neos.ContentRepository.contentDimensions
-
- if ./flow site:list | grep -q 'Node name'; then
- ./flow site:prune '*'
- fi
- ./flow site:import --package-key=Neos.TestSite
- ./flow resource:publish
-BASH
-
- yarn run testcafe "$1" "${fixture}*.e2e.js" \
- --selector-timeout=10000 --assertion-timeout=30000 --debug-on-fail
-done
+yarn run testcafe "$1" "$(pwd)/Tests/IntegrationTests/Fixtures/*/*.e2e.js" \
+ --selector-timeout=10000 --assertion-timeout=30000 --debug-on-fail
diff --git a/Tests/IntegrationTests/e2e.sh b/Tests/IntegrationTests/e2e.sh
index fef89eb20c..e1331bcebb 100755
--- a/Tests/IntegrationTests/e2e.sh
+++ b/Tests/IntegrationTests/e2e.sh
@@ -8,37 +8,25 @@ fi
cd ../../..
-rm -rf DummyDistributionPackages || true
-mv DistributionPackages DummyDistributionPackages
-mkdir DistributionPackages
+./flow cr:setup --content-repository onedimension
+./flow site:create neos-test-onedimension Neos.Test.OneDimension Neos.TestNodeTypes:Document.Page
+./flow domain:add neos-test-onedimension onedimension.localhost --port 8081
+# TODO: Replace with "--assume-yes" flag once "./flow cr:prune" has one
+printf "y\n" | ./flow cr:prune --content-repository onedimension
+./flow cr:import --content-repository onedimension --path ./DistributionPackages/Neos.Test.OneDimension/Resources/Private/Content
-ln -s "../Packages/Application/Neos.Neos.Ui/Tests/IntegrationTests/SharedNodeTypesPackage" DistributionPackages/Neos.TestNodeTypes
+./flow cr:setup --content-repository twodimensions
+./flow site:create neos-test-twodimensions Neos.Test.TwoDimensions Neos.TestNodeTypes:Document.Page
+./flow domain:add neos-test-twodimensions twodimensions.localhost --port 8081
+# TODO: Replace with "--assume-yes" flag once "./flow cr:prune" has one
+printf "y\n" | ./flow cr:prune --content-repository twodimensions
+./flow cr:import --content-repository twodimensions --path ./DistributionPackages/Neos.Test.TwoDimensions/Resources/Private/Content
-for fixture in Packages/Application/Neos.Neos.Ui/Tests/IntegrationTests/Fixtures/*/; do
- echo "$fixture"
+./flow resource:publish
- ln -s "../${fixture}SitePackage" DistributionPackages/Neos.TestSite
+cd Packages/Application/Neos.Neos.Ui
- # TODO: optimize this
- composer reinstall neos/test-nodetypes
- composer reinstall neos/test-site
- ./flow flow:cache:flush --force
- ./flow flow:cache:warmup
- ./flow configuration:show --path Neos.ContentRepository.contentDimensions
+yarn run testcafe "$1" "Tests/IntegrationTests/Fixtures/*/*.e2e.js" \
+ --selector-timeout=10000 --assertion-timeout=30000
- if ./flow site:list | grep -q 'Node name'; then
- ./flow site:prune '*'
- fi
- ./flow site:import --package-key=Neos.TestSite
- ./flow resource:publish
-
- cd Packages/Application/Neos.Neos.Ui
- yarn run testcafe "$1" "../../../${fixture}*.e2e.js" \
- --selector-timeout=10000 --assertion-timeout=30000
- cd ../../..
- rm -f DistributionPackages/Neos.TestSite
-
-done
-
-rm -rf DistributionPackages
-mv DummyDistributionPackages DistributionPackages
+cd ../../..
diff --git a/Tests/IntegrationTests/utils.js b/Tests/IntegrationTests/utils.js
index 8056cef048..86f3289b9e 100644
--- a/Tests/IntegrationTests/utils.js
+++ b/Tests/IntegrationTests/utils.js
@@ -4,13 +4,24 @@ import {PublishDropDown, Page} from './pageModel';
export const subSection = name => console.log('\x1b[33m%s\x1b[0m', ' - ' + name);
-const adminUrl = 'http://127.0.0.1:8081/neos';
const adminUserName = 'admin';
const adminPassword = 'password';
export const getUrl = ClientFunction(() => window.location.href);
-export const adminUser = Role(adminUrl, async t => {
+export const adminUserOnOneDimensionTestSite = Role('http://onedimension.localhost:8081/neos', async t => {
+ await t
+ .typeText('#username', adminUserName)
+ .typeText('#password', adminPassword)
+ .click('button.neos-login-btn');
+
+ await t.expect(getUrl()).contains('/content');
+
+ await waitForReact(30000);
+ await Page.waitForIframeLoading();
+}, {preserveUrl: true});
+
+export const adminUserOnTwoDimensionsTestSite = Role('http://twodimensions.localhost:8081/neos', async t => {
await t
.typeText('#username', adminUserName)
.typeText('#password', adminPassword)
@@ -39,7 +50,7 @@ export async function checkPropTypes() {
}
export async function beforeEach(t) {
- await t.useRole(adminUser);
+ await t.useRole(adminUserOnOneDimensionTestSite);
await waitForReact(30000);
await PublishDropDown.discardAll();
await Page.goToPage('Home');
diff --git a/packages/neos-ui-backend-connector/src/Endpoints/index.ts b/packages/neos-ui-backend-connector/src/Endpoints/index.ts
index 3babf7a40f..042bb7d60c 100644
--- a/packages/neos-ui-backend-connector/src/Endpoints/index.ts
+++ b/packages/neos-ui-backend-connector/src/Endpoints/index.ts
@@ -476,11 +476,16 @@ export default (routes: Routes) => {
throw new Error('.node-frontend-uri does not contain a valid href attribut');
}
- const nodeContextPath = d.querySelector('.node-context-path');
- if (!nodeContextPath) {
+ const nodeContextPathElement = d.querySelector('.node-context-path');
+ if (!nodeContextPathElement) {
throw new Error('.node-context-path is not found in the result');
}
+ const nodeContextPath = nodeContextPathElement.innerHTML.trim();
+ if (!nodeContextPath) {
+ throw new Error('.node-context-path is empty');
+ }
+
return {
nodeFound: true,
nodeFrontendUri,
diff --git a/packages/neos-ui-sagas/src/UI/ContentTree/index.js b/packages/neos-ui-sagas/src/UI/ContentTree/index.js
index a68d024ac1..adcdd4df6c 100644
--- a/packages/neos-ui-sagas/src/UI/ContentTree/index.js
+++ b/packages/neos-ui-sagas/src/UI/ContentTree/index.js
@@ -142,7 +142,7 @@ export function * watchCurrentDocument({globalRegistry, configuration}) {
}
const state = yield select();
- const childrenAreFullyLoaded = $get(['cr', 'nodes', 'byContextPath', contextPath, 'children'], state)
+ const childrenAreFullyLoaded = ($get(['cr', 'nodes', 'byContextPath', contextPath, 'children'], state) || [])
.filter(childEnvelope => nodeTypesRegistry.hasRole(childEnvelope.nodeType, 'content') || nodeTypesRegistry.hasRole(childEnvelope.nodeType, 'contentCollection'))
.every(
childEnvelope => Boolean($get(['cr', 'nodes', 'byContextPath', $get('contextPath', childEnvelope)], state))