@Override public void endRDF() throws RDFHandlerException { try { Resource resultSetNode = GraphUtil.getUniqueSubject(graph, RDF.TYPE, RESULTSET); Literal booleanLit = GraphUtil.getUniqueObjectLiteral(graph, resultSetNode, BOOLEAN); if (booleanLit.equals(DAWGTestResultSetSchema.TRUE)) { value = true; } else if (booleanLit.equals(DAWGTestResultSetSchema.FALSE)) { value = false; } else { throw new RDFHandlerException("Invalid boolean value: " + booleanLit); } } catch (GraphUtilException e) { throw new RDFHandlerException(e.getMessage(), e); } } }
@Override public void endRDF() throws RDFHandlerException { try { Resource resultSetNode = GraphUtil.getUniqueSubject(graph, RDF.TYPE, RESULTSET); Literal booleanLit = GraphUtil.getUniqueObjectLiteral(graph, resultSetNode, BOOLEAN); if (booleanLit.equals(DAWGTestResultSetSchema.TRUE)) { value = true; } else if (booleanLit.equals(DAWGTestResultSetSchema.FALSE)) { value = false; } else { throw new RDFHandlerException("Invalid boolean value: " + booleanLit); } } catch (GraphUtilException e) { throw new RDFHandlerException(e.getMessage(), e); } } }
@Override public void endRDF() throws RDFHandlerException { try { Resource resultSetNode = GraphUtil.getUniqueSubject(graph, RDF.TYPE, RESULTSET); Literal booleanLit = GraphUtil.getUniqueObjectLiteral(graph, resultSetNode, BOOLEAN); if (booleanLit.equals(DAWGTestResultSetSchema.TRUE)) { value = true; } else if (booleanLit.equals(DAWGTestResultSetSchema.FALSE)) { value = false; } else { throw new RDFHandlerException("Invalid boolean value: " + booleanLit); } } catch (GraphUtilException e) { throw new RDFHandlerException(e.getMessage(), e); } } }
@Test public void testLiteralSerialization() throws Exception { testCon.add(bob, name, nameBob); Statement st; RepositoryResult<Statement> statements = testCon.getStatements(null, null, null, false); try { st = statements.next(); } finally { statements.close(); } Literal literal = (Literal) st.getObject(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream out = new ObjectOutputStream(baos); out.writeObject(literal); out.close(); ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); ObjectInputStream in = new ObjectInputStream(bais); Literal deserializedLiteral = (Literal) in.readObject(); in.close(); assertTrue(literal.equals(deserializedLiteral)); assertTrue(testCon.hasStatement(bob, name, literal, true)); assertTrue(testCon.hasStatement(bob, name, deserializedLiteral, true)); }
@Test(expected = QueryEvaluationException.class) public void testSimpleTupleQuery() throws Exception { testCon.add(alice, name, nameAlice, context2); testCon.add(alice, mbox, mboxAlice, context2); testCon.add(context2, publisher, nameAlice); testCon.add(bob, name, nameBob, context1); testCon.add(bob, mbox, mboxBob, context1); testCon.add(context1, publisher, nameBob); StringBuilder queryBuilder = new StringBuilder(); queryBuilder.append(" SELECT name, mbox"); queryBuilder.append(" FROM {} foaf:name {name};"); queryBuilder.append(" foaf:mbox {mbox}"); queryBuilder.append(" USING NAMESPACE foaf = <" + FOAF_NS + ">"); TupleQueryResult result = testCon.prepareTupleQuery(QueryLanguage.SERQL, queryBuilder.toString()).evaluate(); try { assertTrue(result != null); assertTrue(result.hasNext()); while (result.hasNext()) { BindingSet solution = result.next(); assertTrue(solution.hasBinding("name")); assertTrue(solution.hasBinding("mbox")); Value nameResult = solution.getValue("name"); Value mboxResult = solution.getValue("mbox"); assertTrue((nameAlice.equals(nameResult) || nameBob.equals(nameResult))); assertTrue((mboxAlice.equals(mboxResult) || mboxBob.equals(mboxResult))); } } finally { result.close(); } }
assertTrue(name.equals(st.getPredicate()) || mbox.equals(st.getPredicate())); if (name.equals(st.getPredicate())) { assertTrue("unexpected value for name: " + st.getObject(), nameBob.equals(st.getObject())); } else { assertTrue(mbox.equals(st.getPredicate())); assertTrue("unexpected value for mbox: " + st.getObject(), mboxBob.equals(st.getObject()));
assertTrue(bob.equals(st.getSubject())); assertTrue(name.equals(st.getPredicate())); assertTrue(nameBob.equals(st.getObject())); assertTrue(context1.equals(st.getContext()));