Skip to content

Commit

Permalink
Merge branch '9.0' into feature/4726-extract-workspace-metadata-and-u…
Browse files Browse the repository at this point in the history
…ser-assignment-to-neos
  • Loading branch information
bwaidelich committed Jun 28, 2024
2 parents 5f1e296 + f197380 commit 113e0b6
Show file tree
Hide file tree
Showing 72 changed files with 1,392 additions and 848 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ Feature: Add Dimension Specialization
Given I change the content dimensions in content repository "default" to:
| Identifier | Values | Generalizations |
| language | mul, de, ch | ch->de->mul |
When I run the following node migration for workspace "live", creating content streams "migration-cs":
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs", without publishing on success:
"""yaml
migration:
-
Expand All @@ -71,7 +71,7 @@ Feature: Add Dimension Specialization
# the original content stream has not been touched
When I am in workspace "live"
And I am in dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node cs-identifier;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to be of type "Neos.ContentRepository.Testing:Document"
And I expect this node to have the following properties:
| Key | Value |
Expand All @@ -81,14 +81,14 @@ Feature: Add Dimension Specialization


# now, we find the node underneath both DimensionSpacePoints
When I am in content stream "migration-cs" and dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{"language": "de"}
When I am in workspace "migration-workspace" and dimension space point {"language": "de"}
Then I expect a node identified by migration-cs;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "hello" |
When I am in content stream "migration-cs" and dimension space point {"language": "ch"}
When I am in workspace "migration-workspace" and dimension space point {"language": "ch"}
# shine through added
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by migration-cs;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to be of type "Neos.ContentRepository.Testing:Document"
And I expect this node to have the following properties:
| Key | Value |
Expand All @@ -101,27 +101,27 @@ Feature: Add Dimension Specialization
# finally, we MODIFY the node and ensure that the modification is visible in both DSPs (as otherwise the shine through would not have worked
# as expected)
# migration-cs is the actual name of the temporary workspace
And I am in workspace "migration-cs"
And I am in workspace "migration-workspace"
And the command SetNodeProperties is executed with payload:
| Key | Value |
| nodeAggregateId | "sir-david-nodenborough" |
| originDimensionSpacePoint | {"language": "de"} |
| propertyValues | {"text": "changed"} |
When I am in content stream "migration-cs" and dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{"language": "de"}
When I am in workspace "migration-workspace" and dimension space point {"language": "de"}
Then I expect a node identified by migration-cs;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "changed" |
When I am in content stream "migration-cs" and dimension space point {"language": "ch"}
When I am in workspace "migration-workspace" and dimension space point {"language": "ch"}
# ch shines through to the DE node
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by migration-cs;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "changed" |

# the original content stream was untouched
When I am in workspace "live" and dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node cs-identifier;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{"language":"de"} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "hello" |
Expand All @@ -143,15 +143,15 @@ Feature: Add Dimension Specialization
When I am in workspace "live" and dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to no node
When VisibilityConstraints are set to "withoutRestrictions"
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node cs-identifier;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{"language":"de"} to exist in the content graph
When VisibilityConstraints are set to "frontend"

# we change the dimension configuration
When I change the content dimensions in content repository "default" to:
| Identifier | Values | Generalizations |
| language | mul, de, ch | ch->de->mul |

When I run the following node migration for workspace "live", creating content streams "migration-cs":
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs", without publishing on success:
"""yaml
migration:
-
Expand All @@ -164,17 +164,17 @@ Feature: Add Dimension Specialization
"""

# the original content stream has not been touched
When I am in content stream "cs-identifier" and dimension space point {"language": "de"}
When I am in workspace "migration-workspace" and dimension space point {"language": "de"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to no node
When VisibilityConstraints are set to "withoutRestrictions"
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node cs-identifier;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{"language":"de"} to exist in the content graph
When VisibilityConstraints are set to "frontend"

# The visibility edges were modified
When I am in content stream "migration-cs" and dimension space point {"language": "ch"}
When I am in workspace "migration-workspace" and dimension space point {"language": "ch"}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to no node
When VisibilityConstraints are set to "withoutRestrictions"
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{"language": "de"}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{"language":"de"} to exist in the content graph
When VisibilityConstraints are set to "frontend"

When I run integrity violation detection
Expand All @@ -194,7 +194,7 @@ Feature: Add Dimension Specialization
| sourceOrigin | {"language":"de"} |
| targetOrigin | {"language":"en"} |

When I run the following node migration for workspace "live", creating content streams "migration-cs" and exceptions are caught:
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs" and exceptions are caught:
"""yaml
migration:
-
Expand All @@ -208,7 +208,7 @@ Feature: Add Dimension Specialization
Then the last command should have thrown an exception of type "DimensionSpacePointAlreadyExists"

Scenario: Error case - the target dimension is not configured
When I run the following node migration for workspace "live", creating content streams "migration-cs" and exceptions are caught:
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs" and exceptions are caught:
"""yaml
migration:
-
Expand All @@ -227,7 +227,7 @@ Feature: Add Dimension Specialization
| Identifier | Values | Generalizations |
| language | mul, de, foo | de->mul |

When I run the following node migration for workspace "live", creating content streams "migration-cs" and exceptions are caught:
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs" and exceptions are caught:
"""yaml
migration:
-
Expand All @@ -246,7 +246,7 @@ Feature: Add Dimension Specialization
| Identifier | Values | Generalizations |
| language | mul, de, foo | de->mul, foo->mul |

When I run the following node migration for workspace "live", creating content streams "migration-cs" and exceptions are caught:
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs" and exceptions are caught:
"""yaml
migration:
-
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Feature: Add New Property


Scenario: Fixed newValue
When I run the following node migration for workspace "live", creating content streams "migration-cs":
When I run the following node migration for workspace "live", creating target workspace "migration-workspace" on contentStreamId "migration-cs", without publishing on success:
"""yaml
migration:
-
Expand All @@ -72,17 +72,17 @@ Feature: Add New Property
"""
# the original content stream has not been touched
When I am in workspace "live" and dimension space point {}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node cs-identifier;sir-david-nodenborough;{}
Then I expect a node identified by cs-identifier;sir-david-nodenborough;{} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "Original text" |

When I am in content stream "migration-cs" and dimension space point {}
Then I expect node aggregate identifier "sir-david-nodenborough" to lead to node migration-cs;sir-david-nodenborough;{}
When I am in workspace "migration-workspace" and dimension space point {}
Then I expect a node identified by migration-cs;sir-david-nodenborough;{} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "Original text" |
Then I expect node aggregate identifier "other" to lead to node migration-cs;other;{}
Then I expect a node identified by migration-cs;other;{} to exist in the content graph
And I expect this node to have the following properties:
| Key | Value |
| text | "fixed value" |
Expand Down
Loading

0 comments on commit 113e0b6

Please sign in to comment.