You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2020/08/18 12:19:14 UTC

[sling-org-apache-sling-resourceresolver] 02/02: SLING-9623 - ResourceMapperImpl.getAllMappings is incomplete for nested alias

This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-resourceresolver.git

commit e25cbc8eb51cb014520692d95eb93e9300ec2cdc
Author: Angela Schreiber <an...@apache.org>
AuthorDate: Mon Aug 17 14:47:24 2020 +0200

    SLING-9623 - ResourceMapperImpl.getAllMappings is incomplete for nested alias
    
    Add failing tests.
    
    rombert: ignoring tests until they pass
---
 .../impl/mapping/ResourceMapperImplTest.java       | 39 +++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/ResourceMapperImplTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/ResourceMapperImplTest.java
index 56001aa..e9401fd 100644
--- a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/ResourceMapperImplTest.java
+++ b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/ResourceMapperImplTest.java
@@ -111,7 +111,10 @@ public class ResourceMapperImplTest {
         resourceProvider.putResource("/content");
         resourceProvider.putResource("/content/virtual");
         resourceProvider.putResource("/content/virtual/foo"); // matches virtual.host.com.80 mapping entry
-        
+        resourceProvider.putResource("/parent", PROP_ALIAS, "alias-parent"); // parent has alias
+        resourceProvider.putResource("/parent/child", PROP_ALIAS, "alias-child"); // child has alias
+        resourceProvider.putResource("/parent/child-multiple", PROP_ALIAS, "alias-child-1", "alias-child-2"); // child has multiple alias
+
         // build /etc/map structure
         resourceProvider.putResource("/etc");
         resourceProvider.putResource("/etc/map");
@@ -263,6 +266,40 @@ public class ResourceMapperImplTest {
             .verify(resolver, req);    
         
     }
+
+
+    /**
+     * Validates that a resource with an alias on parent and on child
+     *
+     * @throws LoginException
+     */
+    @Test
+    @Ignore
+    public void mapResourceWithNestedAlias() {
+        ExpectedMappings.existingResource("/parent/child")
+                .singleMapping("/alias-parent/alias-child")
+                .singleMappingWithRequest("/app/alias-parent/alias-child")
+                .allMappings("/alias-parent/alias-child", "/alias-parent/child", "/parent/alias-child", "/parent/child")
+                .allMappingsWithRequest("/app/alias-parent/alias-child", "/app/alias-parent/child", "/app/parent/alias-child", "/app/parent/child")
+                .verify(resolver, req);
+    }
+
+    /**
+     * Validates that a resource with an alias on parent and multiple alias on child
+     *
+     * @throws LoginException
+     */
+    @Test
+    @Ignore
+    public void mapResourceWithNestedMultipleAlias() {
+        ExpectedMappings.existingResource("/parent/child-multiple")
+                .singleMapping("/alias-parent/alias-child-1")
+                .singleMappingWithRequest("/app/alias-parent/alias-child-1")
+                .allMappings("/alias-parent/alias-child-1", "/alias-parent/alias-child-2", "/alias-parent/child-multiple", "/parent/alias-child-1", "/parent/alias-child-2", "/parent/child-multiple")
+                .allMappingsWithRequest("/app/alias-parent/alias-child-1", "/app/alias-parent/alias-child-2", "/app/alias-parent/child-multiple", "/app/parent/alias-child-1", "/app/parent/alias-child-2", "/app/parent/child-multiple")
+                .verify(resolver, req);
+    }
+
     static class ExpectedMappings {
         
         public static ExpectedMappings existingResource(String path) {