You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by to...@apache.org on 2016/04/08 16:02:04 UTC
svn commit: r1738246 - in /sling/trunk/contrib/extensions/sling-query/src:
main/java/org/apache/sling/query/resource/jcr/query/
test/java/org/apache/sling/query/selector/parser/
Author: tomekr
Date: Fri Apr 8 14:02:04 2016
New Revision: 1738246
URL: http://svn.apache.org/viewvc?rev=1738246&view=rev
Log:
SLING-5654 Use apostrophe to escape paths in ISDESCENDANTNODE
Modified:
sling/trunk/contrib/extensions/sling-query/src/main/java/org/apache/sling/query/resource/jcr/query/JcrQueryBuilder.java
sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrMultiSelectorTest.java
sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrSelectorTest.java
Modified: sling/trunk/contrib/extensions/sling-query/src/main/java/org/apache/sling/query/resource/jcr/query/JcrQueryBuilder.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/sling-query/src/main/java/org/apache/sling/query/resource/jcr/query/JcrQueryBuilder.java?rev=1738246&r1=1738245&r2=1738246&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/sling-query/src/main/java/org/apache/sling/query/resource/jcr/query/JcrQueryBuilder.java (original)
+++ sling/trunk/contrib/extensions/sling-query/src/main/java/org/apache/sling/query/resource/jcr/query/JcrQueryBuilder.java Fri Apr 8 14:02:04 2016
@@ -55,7 +55,7 @@ public class JcrQueryBuilder {
Formula formula = prepareAlternativeConditions(segments);
if (StringUtils.isNotBlank(rootPath) && !"/".equals(rootPath)) {
List<Term> conditions = new ArrayList<Term>();
- conditions.add(new Atomic(String.format("ISDESCENDANTNODE([%s])", rootPath)));
+ conditions.add(new Atomic(String.format("ISDESCENDANTNODE('%s')", rootPath)));
if (formula != null) {
conditions.add(formula);
}
Modified: sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrMultiSelectorTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrMultiSelectorTest.java?rev=1738246&r1=1738245&r2=1738246&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrMultiSelectorTest.java (original)
+++ sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrMultiSelectorTest.java Fri Apr 8 14:02:04 2016
@@ -52,7 +52,7 @@ public class JcrMultiSelectorTest {
@Test
public void attributesWithPath() {
final String selector = "[x=y][y=z], [a=b][c=d]";
- final String jcrQuery = "SELECT * FROM [nt:base] AS s WHERE (ISDESCENDANTNODE([/content]) AND ((s.[x] = 'y' AND s.[y] = 'z') OR (s.[a] = 'b' AND s.[c] = 'd')))";
+ final String jcrQuery = "SELECT * FROM [nt:base] AS s WHERE (ISDESCENDANTNODE('/content') AND ((s.[x] = 'y' AND s.[y] = 'z') OR (s.[a] = 'b' AND s.[c] = 'd')))";
Assert.assertEquals(jcrQuery, parse(selector, "/content"));
}
}
Modified: sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrSelectorTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrSelectorTest.java?rev=1738246&r1=1738245&r2=1738246&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrSelectorTest.java (original)
+++ sling/trunk/contrib/extensions/sling-query/src/test/java/org/apache/sling/query/selector/parser/JcrSelectorTest.java Fri Apr 8 14:02:04 2016
@@ -47,7 +47,7 @@ public class JcrSelectorTest {
@Test
public void parsePath() {
final String selector = "cq:Page";
- final String jcrQuery = "SELECT * FROM [cq:Page] AS s WHERE ISDESCENDANTNODE([/content])";
+ final String jcrQuery = "SELECT * FROM [cq:Page] AS s WHERE ISDESCENDANTNODE('/content')";
Assert.assertEquals(jcrQuery, parse(selector, "/content"));
}
@@ -117,14 +117,14 @@ public class JcrSelectorTest {
@Test
public void parseMultipleConditionsWithResourceTypeAndPath() {
final String selector = "foundation/components/parsys[key1=value1][key2=value2]";
- final String jcrQuery = "SELECT * FROM [nt:base] AS s WHERE (ISDESCENDANTNODE([/content]) AND (s.[sling:resourceType] = 'foundation/components/parsys' AND s.[key1] = 'value1' AND s.[key2] = 'value2'))";
+ final String jcrQuery = "SELECT * FROM [nt:base] AS s WHERE (ISDESCENDANTNODE('/content') AND (s.[sling:resourceType] = 'foundation/components/parsys' AND s.[key1] = 'value1' AND s.[key2] = 'value2'))";
Assert.assertEquals(jcrQuery, parse(selector, "/content"));
}
@Test
public void parseAttributeWithSubresource() {
final String selector = "cq:Page[jcr:content/cq:template=xyz]";
- final String jcrQuery = "SELECT * FROM [cq:Page] AS s WHERE ISDESCENDANTNODE([/content])";
+ final String jcrQuery = "SELECT * FROM [cq:Page] AS s WHERE ISDESCENDANTNODE('/content')";
Assert.assertEquals(jcrQuery, parse(selector, "/content"));
}