You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2016/08/04 11:40:52 UTC
svn commit: r1755173 -
/sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java
Author: cziegeler
Date: Thu Aug 4 11:40:52 2016
New Revision: 1755173
URL: http://svn.apache.org/viewvc?rev=1755173&view=rev
Log:
Add basic tests for resource resolving
Modified:
sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java
Modified: sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java?rev=1755173&r1=1755172&r2=1755173&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java (original)
+++ sling/trunk/contrib/extensions/context-aware-config/impl/src/test/java/org/apache/sling/contextaware/resource/impl/ConfigurationResourceResolverImplTest.java Thu Aug 4 11:40:52 2016
@@ -19,6 +19,11 @@
package org.apache.sling.contextaware.resource.impl;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.contextaware.resource.ConfigurationResourceResolver;
@@ -27,6 +32,8 @@ import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
+import com.google.common.collect.ImmutableMap;
+
public class ConfigurationResourceResolverImplTest {
@Rule
@@ -42,8 +49,21 @@ public class ConfigurationResourceResolv
underTest = context.registerInjectActivateService(new ConfigurationResourceResolverImpl());
// content resources
- site1Page1 = context.create().resource("/content/site1/page1");
- site2Page1 = context.create().resource("/content/site2/page1");
+ site1Page1 = context.create().resource("/content/site1/page1", ImmutableMap.<String, Object>builder()
+ .put("sling:config", "/config/site1")
+ .build());
+ site2Page1 = context.create().resource("/content/site2/page1", ImmutableMap.<String, Object>builder()
+ .put("sling:config", "/config/site2")
+ .build());
+
+ // configuration
+ context.create().resource("/libs/test");
+ context.create().resource("/config/site1/test");
+ context.create().resource("/apps/feature/a");
+ context.create().resource("/libs/feature/b");
+ context.create().resource("/config/site1/feature/c");
+ context.create().resource("/config/site2/feature/c");
+ context.create().resource("/config/site2/feature/d");
}
@Test
@@ -52,4 +72,34 @@ public class ConfigurationResourceResolv
assertEquals("/content/site2", underTest.getContextPath(site2Page1));
}
+ @Test
+ public void testGetResource() {
+ assertEquals("/config/site1/test", underTest.getResource(site1Page1, "test").getPath());
+ assertEquals("/libs/test", underTest.getResource(site2Page1, "test").getPath());
+ }
+
+ @Test
+ public void testGetResourceCollection() {
+ final Collection<Resource> col1 = underTest.getResourceCollection(site1Page1, "feature");
+ assertEquals(3, col1.size());
+ final Set<String> expectedPaths = new HashSet<>();
+ expectedPaths.add("/config/site1/feature/c");
+ expectedPaths.add("/apps/feature/a");
+ expectedPaths.add("/libs/feature/b");
+
+ for(final Resource rsrc : col1) {
+ assertTrue(expectedPaths.remove(rsrc.getPath()));
+ }
+
+ final Collection<Resource> col2 = underTest.getResourceCollection(site2Page1, "feature");
+ assertEquals(4, col2.size());
+ expectedPaths.add("/config/site2/feature/d");
+ expectedPaths.add("/config/site2/feature/c");
+ expectedPaths.add("/apps/feature/a");
+ expectedPaths.add("/libs/feature/b");
+
+ for(final Resource rsrc : col2) {
+ assertTrue(expectedPaths.remove(rsrc.getPath()));
+ }
+ }
}