Author: mreutegg
Date: Thu Jan 25 13:24:30 2018
New Revision: 1822201
URL: http://svn.apache.org/viewvc?rev=1822201&view=rev
Log:
OAK-7198: Index rule with REGEX_ALL_PROPS includes relative node
Extend test with more checks
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java?rev=1822201&r1=1822200&r2=1822201&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
Thu Jan 25 13:24:30 2018
@@ -20,6 +20,7 @@
package org.apache.jackrabbit.oak.plugins.index.lucene;
import java.util.Collections;
+import java.util.List;
import javax.jcr.PropertyType;
@@ -1203,9 +1204,30 @@ public class IndexDefinitionTest {
@Test
public void regexAllProps() {
IndexDefinitionBuilder builder = new IndexDefinitionBuilder();
+ builder.indexRule("nt:base").property("p");
builder.indexRule("nt:base").property("all",
LuceneIndexConstants.REGEX_ALL_PROPS, true);
-
+
IndexDefinition def = IndexDefinition.newBuilder(root,
builder.build(), "/foo").build();
+ IndexingRule rule = def.getApplicableIndexingRule(root);
+ assertNotNull(rule);
+
+ PropertyDefinition pd = rule.getConfig("p");
+ assertNotNull(pd);
+ assertFalse(pd.isRegexp);
+ assertFalse(pd.relative);
+ assertEquals(0, pd.ancestors.length);
+
+ pd = rule.getConfig("all");
+ assertNotNull(pd);
+ assertTrue(pd.isRegexp);
+ assertFalse(pd.relative);
+ assertEquals(0, pd.ancestors.length);
+
+ assertThat(rule.getAggregate().getIncludes(), is(empty()));
+ assertFalse(rule.getAggregate().hasNodeAggregates());
+ List<Aggregate.Matcher> matchers = rule.getAggregate()
+ .createMatchers(new TestRoot("/"));
+ assertThat(matchers, is(empty()));
assertThat(def.getRelativeNodeNames(), is(empty()));
}
@@ -1232,4 +1254,21 @@ public class IndexDefinitionTest {
return builder;
}
+ private static class TestRoot implements Aggregate.AggregateRoot {
+
+ private final String path;
+
+ public TestRoot(String path) {
+ this.path = path;
+ }
+
+ @Override
+ public void markDirty() {
+ }
+
+ @Override
+ public String getPath() {
+ return path;
+ }
+ }
}