[Mulgara-svn] r1008 - branches/mgr-121-lockrecovery/src/jar/resolver/java/org/mulgara/resolver
ronald at mulgara.org
ronald at mulgara.org
Sat Jun 21 10:32:42 UTC 2008
Author: ronald
Date: 2008-06-21 03:32:41 -0700 (Sat, 21 Jun 2008)
New Revision: 1008
Modified:
branches/mgr-121-lockrecovery/src/jar/resolver/java/org/mulgara/resolver/AdvDatabaseSessionUnitTest.java
Log:
Extracted copy-pasted query and results creations into a common method.
Modified: branches/mgr-121-lockrecovery/src/jar/resolver/java/org/mulgara/resolver/AdvDatabaseSessionUnitTest.java
===================================================================
--- branches/mgr-121-lockrecovery/src/jar/resolver/java/org/mulgara/resolver/AdvDatabaseSessionUnitTest.java 2008-06-21 01:30:43 UTC (rev 1007)
+++ branches/mgr-121-lockrecovery/src/jar/resolver/java/org/mulgara/resolver/AdvDatabaseSessionUnitTest.java 2008-06-21 10:32:41 UTC (rev 1008)
@@ -244,47 +244,9 @@
// Load some test data
Session session = database.newSession();
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session.query(new Query(
- selectList, // SELECT
- new ModelResource(modelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ Answer answer = session.query(createQuery(modelURI));
+ compareResults(expectedResults(), answer);
answer.close();
} finally {
session.close();
@@ -294,7 +256,7 @@
}
}
-
+
public void testConcurrentQuery() throws URISyntaxException {
logger.info("Testing concurrentQuery");
@@ -302,45 +264,10 @@
// Load some test data
Session session = database.newSession();
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer1 = session.query(new Query(
- selectList, // SELECT
- new ModelResource(modelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Collections.singletonList( // ORDER BY
- new Order(subjectVariable, true)
- ),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer1 = session.query(createQuery(modelURI));
- Answer answer2 = session.query(new Query(
- selectList, // SELECT
- new ModelResource(modelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Collections.singletonList( // ORDER BY
- new Order(subjectVariable, true)
- ),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer2 = session.query(createQuery(modelURI));
compareResults(answer1, answer2);
@@ -354,7 +281,7 @@
}
}
-
+
public void testSubqueryQuery() throws URISyntaxException {
logger.info("Testing subqueryQuery");
@@ -429,7 +356,7 @@
}
}
-
+
public void testConcurrentSubqueryQuery() throws URISyntaxException {
logger.info("Testing concurrentSubqueryQuery");
@@ -511,7 +438,7 @@
}
}
-
+
/**
* Note: What this test does is a really bad idea - there is no
* isolation provided as each operation is within its own
@@ -526,32 +453,8 @@
session.createModel(model2URI, null);
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session.query(new Query(
- selectList, // SELECT
- new ModelResource(modelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session.query(createQuery(modelURI));
answer.beforeFirst();
while (answer.next()) {
@@ -562,37 +465,8 @@
}
answer.close();
- Answer answer2 = session.query(new Query(
- selectList, // SELECT
- new ModelResource(model2URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer2);
+ Answer answer2 = session.query(createQuery(model2URI));
+ compareResults(expectedResults(), answer2);
answer2.close();
session.removeModel(model2URI);
@@ -604,7 +478,7 @@
}
}
-
+
public void testExplicitBasicQuery() throws URISyntaxException {
logger.info("Testing basicQuery");
@@ -613,47 +487,10 @@
Session session = database.newSession();
try {
session.setAutoCommit(false);
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session.query(new Query(
- selectList, // SELECT
- new ModelResource(modelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ Answer answer = session.query(createQuery(modelURI));
+ compareResults(expectedResults(), answer);
session.setAutoCommit(true);
@@ -675,39 +512,15 @@
}
}
-
+
public void testAnswerWriteCloseIsolation() throws URISyntaxException {
logger.info("Testing AnswerWriteCloseIsolation");
try {
Session session = database.newSession();
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session.query(new Query(
- selectList, // SELECT
- new ModelResource(systemModelURI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session.query(createQuery(systemModelURI));
session.setAutoCommit(false);
@@ -723,7 +536,7 @@
}
}
-
+
public void testExplicitIsolationQuery() throws URISyntaxException {
logger.info("testExplicitIsolationQuery");
URI fileURI = new File("data/xatest-model1.rdf").toURI();
@@ -737,76 +550,17 @@
session1.setAutoCommit(false);
session1.setModel(model3URI, new ModelResource(fileURI));
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
answer.close();
session1.setAutoCommit(true);
- selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
-
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ answer = session2.query(createQuery(model3URI));
+ compareResults(expectedResults(), answer);
answer.close();
session1.removeModel(model3URI);
@@ -834,32 +588,8 @@
session1.setAutoCommit(false);
session1.setModel(model3URI, new ModelResource(fileURI));
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
answer.close();
@@ -867,28 +597,8 @@
session1.rollback();
session1.setAutoCommit(true);
- selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
@@ -918,145 +628,33 @@
session1.setAutoCommit(false);
session1.setModel(model3URI, new ModelResource(fileURI));
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
answer.close();
session1.commit();
- selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ answer = session2.query(createQuery(model3URI));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ compareResults(expectedResults(), answer);
answer.close();
session1.removeModel(model3URI);
session1.createModel(model3URI, null);
- selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ answer = session2.query(createQuery(model3URI));
- results = new String[][] {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ compareResults(expectedResults(), answer);
answer.close();
session1.setAutoCommit(true);
- selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
answer.close();
@@ -1084,79 +682,19 @@
session1.createModel(model4URI, null);
session1.setModel(model4URI, new ModelResource(fileURI));
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Check data loaded
- Answer answer = session1.query(new Query(
- selectList, // SELECT
- new ModelResource(model4URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session1.query(createQuery(model4URI));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ compareResults(expectedResults(), answer);
answer.close();
// Delete all the data from the model
- session2.delete(model4URI, new Query(
- selectList, // SELECT
- new ModelResource(model4URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- new ArrayList<Order>(), // ORDER BY
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ session2.delete(model4URI, createQuery(model4URI));
// Check all data removed from the model
// This also checks that the delete successfully
// performed the implicit commit.
- answer = session1.query(new Query(
- selectList, // SELECT
- new ModelResource(model4URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- new ArrayList<Order>(), // ORDER BY
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ answer = session1.query(createQuery(model4URI));
answer.beforeFirst();
assertFalse(answer.next());
answer.close();
@@ -1181,61 +719,38 @@
public void testInsertionBlankNodes()
{
logger.info("testInsertionBlankNodes");
-
+
try {
Session session = database.newSession();
try {
session.createModel(model2URI, null);
session.setAutoCommit(false);
-
+
URIReference refA = new URIReferenceImpl(URI.create("test:a"));
URIReference refP1 = new URIReferenceImpl(URI.create("test:p1"));
URIReference refP2 = new URIReferenceImpl(URI.create("test:p2"));
Literal o1 = new LiteralImpl("o1");
Literal o2 = new LiteralImpl("o2");
BlankNode bn = new VariableNodeImpl("bn");
-
+
Set<Triple> insert1 = new HashSet<Triple>();
insert1.add(new TripleImpl(refA, refP1, bn));
insert1.add(new TripleImpl(bn, refP2, o1));
-
+
Set<Triple> insert2 = new HashSet<Triple>();
insert2.add(new TripleImpl(refA, refP1, bn));
insert2.add(new TripleImpl(bn, refP2, o2));
-
+
session.insert(model2URI, insert1);
session.insert(model2URI, insert2);
session.setAutoCommit(true);
-
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
- Answer answer = session.query(new Query(
- selectList, // SELECT
- new ModelResource(model2URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- new ArrayList<Order>(), // ORDER BY
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
-
+ Answer answer = session.query(createQuery(model2URI));
assertEquals(4, answer.getRowCount());
- }
- finally {
+ } finally {
session.close();
}
- }
- catch (Exception e) {
+ } catch (Exception e) {
fail(e);
}
}
@@ -1269,48 +784,10 @@
tx2Started.notify();
}
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ compareResults(expectedResults(), answer);
answer.close();
session2.commit();
@@ -1391,32 +868,8 @@
try {
Session session2 = database.newSession();
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
@@ -1447,48 +900,9 @@
try {
Session session2 = database.newSession();
try {
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
-
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
-
- String[][] results = {
- { "test:s01", "test:p01", "test:o01" },
- { "test:s01", "test:p02", "test:o01" },
- { "test:s01", "test:p02", "test:o02" },
- { "test:s01", "test:p03", "test:o02" },
- { "test:s02", "test:p03", "test:o02" },
- { "test:s02", "test:p04", "test:o02" },
- { "test:s02", "test:p04", "test:o03" },
- { "test:s02", "test:p05", "test:o03" },
- { "test:s03", "test:p01", "test:o01" },
- { "test:s03", "test:p05", "test:o03" },
- { "test:s03", "test:p06", "test:o01" },
- { "test:s03", "test:p06", "test:o03" },
- };
- compareResults(results, answer);
+ Answer answer = session2.query(createQuery(model3URI));
+ compareResults(expectedResults(), answer);
answer.close();
} finally {
@@ -1547,32 +961,9 @@
logger.debug("Obtaining autocommit for session2");
session2.setAutoCommit(false);
logger.debug("Obtained autocommit for session2");
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
@@ -1640,32 +1031,9 @@
logger.debug("Obtaining autocommit for session2");
session2.setAutoCommit(false);
logger.debug("Obtained autocommit for session2");
- Variable subjectVariable = new Variable("subject");
- Variable predicateVariable = new Variable("predicate");
- Variable objectVariable = new Variable("object");
- List<SelectElement> selectList = new ArrayList<SelectElement>(3);
- selectList.add(subjectVariable);
- selectList.add(predicateVariable);
- selectList.add(objectVariable);
-
// Evaluate the query
- Answer answer = session2.query(new Query(
- selectList, // SELECT
- new ModelResource(model3URI), // FROM
- new ConstraintImpl(subjectVariable, // WHERE
- predicateVariable,
- objectVariable),
- null, // HAVING
- Arrays.asList(new Order[] { // ORDER BY
- new Order(subjectVariable, true),
- new Order(predicateVariable, true),
- new Order(objectVariable, true)
- }),
- null, // LIMIT
- 0, // OFFSET
- new UnconstrainedAnswer() // GIVEN
- ));
+ Answer answer = session2.query(createQuery(model3URI));
answer.beforeFirst();
assertFalse(answer.next());
@@ -1801,10 +1169,56 @@
database = null;
}
+
//
// Internal methods
//
+ private Query createQuery(URI model) {
+ Variable subjectVariable = new Variable("subject");
+ Variable predicateVariable = new Variable("predicate");
+ Variable objectVariable = new Variable("object");
+
+ List<SelectElement> selectList = new ArrayList<SelectElement>(3);
+ selectList.add(subjectVariable);
+ selectList.add(predicateVariable);
+ selectList.add(objectVariable);
+
+ return new Query(
+ selectList, // SELECT
+ new ModelResource(model), // FROM
+ new ConstraintImpl(subjectVariable, // WHERE
+ predicateVariable,
+ objectVariable),
+ null, // HAVING
+ Arrays.asList(new Order[] { // ORDER BY
+ new Order(subjectVariable, true),
+ new Order(predicateVariable, true),
+ new Order(objectVariable, true)
+ }),
+ null, // LIMIT
+ 0, // OFFSET
+ new UnconstrainedAnswer() // GIVEN
+ );
+ }
+
+ private String[][] expectedResults() {
+ return new String[][] {
+ { "test:s01", "test:p01", "test:o01" },
+ { "test:s01", "test:p02", "test:o01" },
+ { "test:s01", "test:p02", "test:o02" },
+ { "test:s01", "test:p03", "test:o02" },
+ { "test:s02", "test:p03", "test:o02" },
+ { "test:s02", "test:p04", "test:o02" },
+ { "test:s02", "test:p04", "test:o03" },
+ { "test:s02", "test:p05", "test:o03" },
+ { "test:s03", "test:p01", "test:o01" },
+ { "test:s03", "test:p05", "test:o03" },
+ { "test:s03", "test:p06", "test:o01" },
+ { "test:s03", "test:p06", "test:o03" },
+ };
+ }
+
private void compareResults(String[][] expected, Answer answer) throws Exception {
try {
answer.beforeFirst();
More information about the Mulgara-svn
mailing list