You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2022/09/09 12:49:30 UTC

[sling-org-apache-sling-testing-sling-mock] branch feature/SLING-11572-isresourcetype-serviceresolver created (now 5a7250a)

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

sseifert pushed a change to branch feature/SLING-11572-isresourcetype-serviceresolver
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-testing-sling-mock.git


      at 5a7250a  SLING-11572 test case to calling isResourceType() on resource created in separate resource resolver

This branch includes the following new commits:

     new 5a7250a  SLING-11572 test case to calling isResourceType() on resource created in separate resource resolver

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[sling-org-apache-sling-testing-sling-mock] 01/01: SLING-11572 test case to calling isResourceType() on resource created in separate resource resolver

Posted by ss...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sseifert pushed a commit to branch feature/SLING-11572-isresourcetype-serviceresolver
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-testing-sling-mock.git

commit 5a7250a223f9e70bfcbbe46bb0448e39d73d533a
Author: Stefan Seifert <st...@users.noreply.github.com>
AuthorDate: Fri Sep 9 12:53:45 2022 +0200

    SLING-11572 test case to calling isResourceType() on resource created in separate resource resolver
---
 .../AbstractMultipleResourceResolverTest.java      | 40 +++++++++++++++++++---
 1 file changed, 36 insertions(+), 4 deletions(-)

diff --git a/core/src/test/java/org/apache/sling/testing/mock/sling/resource/AbstractMultipleResourceResolverTest.java b/core/src/test/java/org/apache/sling/testing/mock/sling/resource/AbstractMultipleResourceResolverTest.java
index 5808a78..a9434bb 100644
--- a/core/src/test/java/org/apache/sling/testing/mock/sling/resource/AbstractMultipleResourceResolverTest.java
+++ b/core/src/test/java/org/apache/sling/testing/mock/sling/resource/AbstractMultipleResourceResolverTest.java
@@ -18,9 +18,14 @@
  */
 package org.apache.sling.testing.mock.sling.resource;
 
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
 
+import java.util.Collections;
+
+import org.apache.sling.api.resource.PersistenceException;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.api.resource.ResourceResolverFactory;
@@ -28,6 +33,7 @@ import org.apache.sling.testing.mock.osgi.MockOsgi;
 import org.apache.sling.testing.mock.sling.MockSling;
 import org.apache.sling.testing.mock.sling.ResourceResolverType;
 import org.junit.After;
+import org.junit.Before;
 import org.junit.Test;
 import org.osgi.framework.BundleContext;
 
@@ -43,21 +49,27 @@ public abstract class AbstractMultipleResourceResolverTest {
 
     protected abstract ResourceResolverType getResourceResolverType();
 
+    private ResourceResolverFactory resourceResolverFactory;
+
     protected ResourceResolverFactory newResourceResolerFactory() {
         return MockSling.newResourceResolverFactory(getResourceResolverType(), bundleContext);
     }
 
+    @Before
+    public void setUp() {
+        this.resourceResolverFactory = newResourceResolerFactory();
+    }
+
     @After
     public void tearDown() {
         MockOsgi.shutdown(bundleContext);
     }
 
-    @SuppressWarnings("deprecation")
     @Test
+    @SuppressWarnings("deprecation")
     public void testMultipleResourceResolver() throws Exception {
-        ResourceResolverFactory factory = newResourceResolerFactory();
-        ResourceResolver resolver1 = factory.getAdministrativeResourceResolver(null);
-        ResourceResolver resolver2 = factory.getAdministrativeResourceResolver(null);
+        ResourceResolver resolver1 = resourceResolverFactory.getAdministrativeResourceResolver(null);
+        ResourceResolver resolver2 = resourceResolverFactory.getAdministrativeResourceResolver(null);
 
         // add a resource in resolver 1
         Resource root = resolver1.getResource("/");
@@ -75,4 +87,24 @@ public abstract class AbstractMultipleResourceResolverTest {
         assertNull(resolver1.getResource("/test"));
     }
 
+    @Test
+    @SuppressWarnings("deprecation")
+    public void testIsResourceTypeWithAdminResourceResolver() throws Exception {
+        ResourceResolver resourceResolver = resourceResolverFactory.getAdministrativeResourceResolver(null);
+        createResourceAndCheckResourceType(resourceResolver);
+    }
+
+    @Test
+    public void testIsResourceTypeWithNonAdminResourceResolver() throws Exception {
+        ResourceResolver resourceResolver = resourceResolverFactory.getServiceResourceResolver(null);
+        createResourceAndCheckResourceType(resourceResolver);
+    }
+
+    private static void createResourceAndCheckResourceType(ResourceResolver serviceResolver) throws PersistenceException {
+        Resource root = serviceResolver.getResource("/");
+        Resource resource = serviceResolver.create(root, "testResource", Collections.singletonMap("sling:resourceType", "testResourceType"));
+        assertTrue("is expected resource type 'testResourceType'", resource.isResourceType("testResourceType"));
+        assertFalse("is not unexpected resource type 'anotherResourceType'", resource.isResourceType("anotherResourceType"));
+    }
+
 }