This is an automated email from the ASF dual-hosted git repository. kwin pushed a commit to branch feature/SLING-10012-precompiled-templates in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-bundle-tracker-it.git
commit 9d5127a5c77f6745ea3ff048c75b5dccaef4c32b Author: Konrad Windszus <[email protected]> AuthorDate: Mon Dec 21 13:19:59 2020 +0100 SLING-10012 add some more tests around overriding templates in extended resource type (not precompiled) --- .../1.0.0/{h.html => h-templates.html} | 4 +++- .../1.0.0/h.html | 3 +++ .../SLING-INF/content/examplebundle-extend2.xml | 23 +++++++++++++++------- .../extends | 1 + .../h-templates.html} | 4 +++- .../bundle/tracker/it/ExampleBundleExtend1IT.java | 3 +++ .../it/ExampleBundleExtend1TeleportedIT.java | 5 +++-- .../bundle/tracker/it/ExampleBundleExtend2IT.java | 15 ++++++++++++++ 8 files changed, 47 insertions(+), 11 deletions(-) diff --git a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html b/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h-templates.html similarity index 93% copy from examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html copy to examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h-templates.html index bfdb090..4d5d15f 100644 --- a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html +++ b/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h-templates.html @@ -16,4 +16,6 @@ ~ specific language governing permissions and limitations ~ under the License. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/--> -<span id="h-extend1" data-rt="${resource.resourceType}">Hello</span> +<template data-sly-template.simple> +Hello from template +</template> \ No newline at end of file diff --git a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html b/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html index bfdb090..e2f94cc 100644 --- a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html +++ b/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html @@ -17,3 +17,6 @@ ~ under the License. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/--> <span id="h-extend1" data-rt="${resource.resourceType}">Hello</span> +<div id="h-template-wrapper1"> +<sly data-sly-use.templates="h-templates.html" data-sly-call="${templates.simple}"></sly> +</div> \ No newline at end of file diff --git a/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/SLING-INF/content/examplebundle-extend2.xml b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/SLING-INF/content/examplebundle-extend2.xml index e6c014a..ba0ecce 100644 --- a/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/SLING-INF/content/examplebundle-extend2.xml +++ b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/SLING-INF/content/examplebundle-extend2.xml @@ -54,11 +54,20 @@ </property> </node> <node> -<name>three</name> -<primaryNodeType>nt:unstructured</primaryNodeType> -<property> - <name>sling:resourceType</name> - <value>org.apache.sling.scripting.examplebundle.extend2.three</value> - <type>String</type> -</property> + <name>three</name> + <primaryNodeType>nt:unstructured</primaryNodeType> + <property> + <name>sling:resourceType</name> + <value>org.apache.sling.scripting.examplebundle.extend2.three</value> + <type>String</type> + </property> +</node> +<node> + <name>four</name> + <primaryNodeType>nt:unstructured</primaryNodeType> + <property> + <name>sling:resourceType</name> + <value>org.apache.sling.scripting.examplebundle.extend2.four</value> + <type>String</type> + </property> </node> diff --git a/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/extends b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/extends new file mode 100644 index 0000000..f2695aa --- /dev/null +++ b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/extends @@ -0,0 +1 @@ +org.apache.sling.scripting.examplebundle.extend1.hello diff --git a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/h-templates.html similarity index 92% copy from examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html copy to examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/h-templates.html index bfdb090..8db1452 100644 --- a/examples/org-apache-sling-scripting-examplebundle-extend1/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend1.hello/1.0.0/h.html +++ b/examples/org-apache-sling-scripting-examplebundle-extend2/src/main/resources/javax.script/org.apache.sling.scripting.examplebundle.extend2.four/h-templates.html @@ -16,4 +16,6 @@ ~ specific language governing permissions and limitations ~ under the License. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/--> -<span id="h-extend1" data-rt="${resource.resourceType}">Hello</span> +<template data-sly-template.simple> +Hello from overridden template +</template> \ No newline at end of file diff --git a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1IT.java b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1IT.java index e593b01..356ee85 100644 --- a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1IT.java +++ b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1IT.java @@ -43,6 +43,9 @@ public class ExampleBundleExtend1IT extends AbstractEndpointTestBase { assertEquals("Resource based servlet resolution failed.", 1, h.size()); assertEquals("Hello", h.html()); assertEquals(expectedRT, h.attr(DATA_RT_ATTRIBUTE)); + h = document.select("#h-template-wrapper1"); + assertEquals("Resource based servlet resolution failed.", 1, h.size()); + assertEquals("Hello from template", h.html().trim()); Elements w = document.select("#w-precompiled-1"); assertEquals("The w.html script should have been provided by org.apache.sling.scripting.examplebundle.precompiled.hello/1.0.0", 1 diff --git a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1TeleportedIT.java b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1TeleportedIT.java index 8dde144..0189a30 100644 --- a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1TeleportedIT.java +++ b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend1TeleportedIT.java @@ -43,11 +43,12 @@ public class ExampleBundleExtend1TeleportedIT extends AbstractTeleportedTestBase assertNotNull(main); assertEquals("org.apache.sling.scripting.examplebundle.precompiled.hello/1.0.0", main.getResourceSuperType()); Map<String, Resource> children = collectResourceChildren(main); - assertEquals(1, children.size()); + assertEquals(2, children.size()); Set<String> expectedChildren = getChildrenForServletResource( "/apps/" + expectedRT, - "h.html" + "h.html", + "h-templates.html" ); assertEquals(expectedChildren, children.values().stream().map(Resource::getPath).collect(Collectors.toSet())); diff --git a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend2IT.java b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend2IT.java index 22c947d..70c652b 100644 --- a/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend2IT.java +++ b/it/src/test/java/org/apache/sling/scripting/bundle/tracker/it/ExampleBundleExtend2IT.java @@ -167,4 +167,19 @@ public class ExampleBundleExtend2IT extends AbstractEndpointTestBase { assertEquals("World", w.html()); assertEquals(expectedRT, w.attr(DATA_RT_ATTRIBUTE)); } + + @Test + public void testFour() throws Exception { + final String expectedRT = "org.apache.sling.scripting.examplebundle.extend2.four"; + + Document document = getDocument(ROOT + "/four.html"); + System.err.println("four.html content:" + document.toString()); + Elements h = document.select("#h-extend1"); + assertEquals("Resource based servlet resolution failed.", 1, h.size()); + assertEquals("Hello", h.html()); + assertEquals(expectedRT, h.attr(DATA_RT_ATTRIBUTE)); + h = document.select("#h-template-wrapper1"); + assertEquals("Resource based servlet resolution failed.", 1, h.size()); + assertEquals("Hello from overridden template", h.html().trim()); + } }
