use of javax.jcr.Node in project jackrabbit by apache.
the class ChildAxisQueryTest method testSimpleQuery.
public void testSimpleQuery() throws Exception {
Node foo = testRootNode.addNode("foo");
testRootNode.addNode("bar");
testRootNode.save();
String sql = "SELECT * FROM nt:unstructured WHERE jcr:path LIKE '" + testRoot + "/foo'";
executeSQLQuery(sql, new Node[] { foo });
}
use of javax.jcr.Node in project jackrabbit by apache.
the class ChildAxisQueryTest method testRelationQueryDeep.
public void testRelationQueryDeep() throws RepositoryException {
Node n = testRootNode.addNode(nodeName1).addNode(nodeName2);
Node n1 = n.addNode(nodeName3);
n1.setProperty(propertyName1, 1);
Node n2 = n.addNode(nodeName3);
n2.setProperty(propertyName1, 2);
Node n3 = n.addNode(nodeName3);
n3.setProperty(propertyName1, 3);
testRootNode.save();
String base = testPath + "[" + nodeName1 + "/" + nodeName2 + "/" + nodeName3 + "/@" + propertyName1;
executeXPathQuery(base + " = 1]", new Node[] { testRootNode });
executeXPathQuery(base + " = 2]", new Node[] { testRootNode });
executeXPathQuery(base + " = 3]", new Node[] { testRootNode });
executeXPathQuery(base + " = 4]", new Node[] {});
executeXPathQuery(base + " > 0]", new Node[] { testRootNode });
executeXPathQuery(base + " > 1]", new Node[] { testRootNode });
executeXPathQuery(base + " > 2]", new Node[] { testRootNode });
executeXPathQuery(base + " > 3]", new Node[] {});
executeXPathQuery(base + " >= 1]", new Node[] { testRootNode });
executeXPathQuery(base + " >= 2]", new Node[] { testRootNode });
executeXPathQuery(base + " >= 3]", new Node[] { testRootNode });
executeXPathQuery(base + " >= 4]", new Node[] {});
executeXPathQuery(base + " < 1]", new Node[] {});
executeXPathQuery(base + " < 2]", new Node[] { testRootNode });
executeXPathQuery(base + " < 3]", new Node[] { testRootNode });
executeXPathQuery(base + " < 4]", new Node[] { testRootNode });
executeXPathQuery(base + " <= 0]", new Node[] {});
executeXPathQuery(base + " <= 1]", new Node[] { testRootNode });
executeXPathQuery(base + " <= 2]", new Node[] { testRootNode });
executeXPathQuery(base + " <= 3]", new Node[] { testRootNode });
executeXPathQuery(base + " != 0]", new Node[] { testRootNode });
executeXPathQuery(base + " != 1]", new Node[] { testRootNode });
executeXPathQuery(base + " != 2]", new Node[] { testRootNode });
executeXPathQuery(base + " != 3]", new Node[] { testRootNode });
}
use of javax.jcr.Node in project jackrabbit by apache.
the class FulltextQueryTest method testFulltextOrSQL.
public void testFulltextOrSQL() throws Exception {
Node n = testRootNode.addNode("node1");
n.setProperty("title", new String[] { "test text" });
n.setProperty("mytext", new String[] { "the quick brown fox jumps over the lazy dog." });
n = testRootNode.addNode("node2");
n.setProperty("title", new String[] { "other text" });
n.setProperty("mytext", new String[] { "the quick brown fox jumps over the lazy dog." });
testRootNode.save();
String sql = "SELECT * FROM nt:unstructured" + " WHERE \"jcr:path\" LIKE '" + testRoot + "/%" + "' AND CONTAINS(., '''fox jumps'' test OR other')";
Query q = superuser.getWorkspace().getQueryManager().createQuery(sql, Query.SQL);
QueryResult result = q.execute();
checkResult(result, 2);
}
use of javax.jcr.Node in project jackrabbit by apache.
the class FulltextQueryTest method testContainsStarSQL.
public void testContainsStarSQL() throws RepositoryException {
Node n = testRootNode.addNode("node1");
n.setProperty("title", new String[] { "tEst text" });
n.setProperty("mytext", new String[] { "The quick brown Fox jumps over the lazy dog." });
n = testRootNode.addNode("node2");
n.setProperty("title", new String[] { "The quick brown Fox jumps over the lazy dog." });
n.setProperty("mytext", new String[] { "text text" });
testRootNode.save();
String sql = "SELECT * FROM nt:unstructured" + " WHERE jcr:path LIKE '" + testRoot + "/%" + "' AND CONTAINS(., 'fox jumps')";
Query q = superuser.getWorkspace().getQueryManager().createQuery(sql, Query.SQL);
checkResult(q.execute(), 2);
}
use of javax.jcr.Node in project jackrabbit by apache.
the class FulltextQueryTest method testFulltextPhraseSQL.
public void testFulltextPhraseSQL() throws Exception {
Node n = testRootNode.addNode("node1");
n.setProperty("title", new String[] { "test text" });
n.setProperty("mytext", new String[] { "the quick brown jumps fox over the lazy dog." });
n = testRootNode.addNode("node2");
n.setProperty("title", new String[] { "other text" });
n.setProperty("mytext", new String[] { "the quick brown fox jumps over the lazy dog." });
testRootNode.save();
String sql = "SELECT * FROM nt:unstructured" + " WHERE \"jcr:path\" LIKE '" + testRoot + "/%" + "' AND CONTAINS(., 'text \"fox jumps\"')";
Query q = superuser.getWorkspace().getQueryManager().createQuery(sql, Query.SQL);
QueryResult result = q.execute();
checkResult(result, 1);
}
Aggregations