use of org.apache.jena.graph.Graph in project jena by apache.
the class UnionTest method testUnion.
@ContractTest
public void testUnion() {
Graph g1 = graphWith("x R y; p R q");
Graph g2 = graphWith("r Foo s; x R y");
Union u = new Union(g1, g2);
assertContains("Union", "x R y", u);
assertContains("Union", "p R q", u);
assertContains("Union", "r Foo s", u);
if (u.size() != 3)
fail("oops: size of union is not 3");
u.add(triple("cats eat cheese"));
assertContains("Union", "cats eat cheese", u);
if (contains(g1, "cats eat cheese") == false && contains(g2, "cats eat cheese") == false)
fail("oops: neither g1 nor g2 contains `cats eat cheese`");
}
use of org.apache.jena.graph.Graph in project jena by apache.
the class GraphEventManagerContractTest method testDeleteGraph.
/**
* Test that deleting a graph is reported as deleting a graph.
*/
@ContractTest
public void testDeleteGraph() {
gem.register(L);
Graph other = Mockito.mock(Graph.class);
gem.notifyDeleteGraph(mockGraph, other);
L.assertHas(new Object[] { "deleteGraph", mockGraph, other });
}
use of org.apache.jena.graph.Graph in project jena by apache.
the class GraphMakerContractTest method testCanOpenUncreated.
/**
* Test that we *can* open a graph that hasn't been created
*/
@ContractTest
public void testCanOpenUncreated() {
String name = jName("willBeCreated");
Graph g1 = graphMaker.openGraph(name);
g1.close();
graphMaker.openGraph(name, true);
}
use of org.apache.jena.graph.Graph in project jena by apache.
the class TestReasoners method testTransitiveRebind.
/**
* Test rebind operation for the transitive reasoner
*/
public void testTransitiveRebind() {
Graph data = Factory.createGraphMem();
Node C1 = NodeFactory.createURI("C1");
Node C2 = NodeFactory.createURI("C2");
Node C3 = NodeFactory.createURI("C3");
Node C4 = NodeFactory.createURI("C4");
data.add(new Triple(C1, RDFS.subClassOf.asNode(), C2));
data.add(new Triple(C2, RDFS.subClassOf.asNode(), C3));
Reasoner reasoner = TransitiveReasonerFactory.theInstance().create(null);
assertTrue(reasoner.supportsProperty(RDFS.subClassOf));
assertTrue(!reasoner.supportsProperty(RDFS.domain));
InfGraph infgraph = reasoner.bind(data);
TestUtil.assertIteratorValues(this, infgraph.find(C1, null, null), new Object[] { new Triple(C1, RDFS.subClassOf.asNode(), C1), new Triple(C1, RDFS.subClassOf.asNode(), C2), new Triple(C1, RDFS.subClassOf.asNode(), C3) });
Graph data2 = Factory.createGraphMem();
data2.add(new Triple(C1, RDFS.subClassOf.asNode(), C2));
data2.add(new Triple(C2, RDFS.subClassOf.asNode(), C4));
infgraph.rebind(data2);
// Incremental additions
Node a = NodeFactory.createURI("a");
Node b = NodeFactory.createURI("b");
Node c = NodeFactory.createURI("c");
infgraph.add(new Triple(a, RDFS.subClassOf.asNode(), b));
infgraph.add(new Triple(b, RDFS.subClassOf.asNode(), c));
TestUtil.assertIteratorValues(this, infgraph.find(b, RDFS.subClassOf.asNode(), null), new Object[] { new Triple(b, RDFS.subClassOf.asNode(), c), new Triple(b, RDFS.subClassOf.asNode(), b) });
TestUtil.assertIteratorValues(this, infgraph.find(a, RDFS.subClassOf.asNode(), null), new Object[] { new Triple(a, RDFS.subClassOf.asNode(), a), new Triple(a, RDFS.subClassOf.asNode(), b), new Triple(a, RDFS.subClassOf.asNode(), c) });
Node p = NodeFactory.createURI("p");
Node q = NodeFactory.createURI("q");
Node r = NodeFactory.createURI("r");
infgraph.add(new Triple(p, RDFS.subPropertyOf.asNode(), q));
infgraph.add(new Triple(q, RDFS.subPropertyOf.asNode(), r));
TestUtil.assertIteratorValues(this, infgraph.find(q, RDFS.subPropertyOf.asNode(), null), new Object[] { new Triple(q, RDFS.subPropertyOf.asNode(), q), new Triple(q, RDFS.subPropertyOf.asNode(), r) });
TestUtil.assertIteratorValues(this, infgraph.find(p, RDFS.subPropertyOf.asNode(), null), new Object[] { new Triple(p, RDFS.subPropertyOf.asNode(), p), new Triple(p, RDFS.subPropertyOf.asNode(), q), new Triple(p, RDFS.subPropertyOf.asNode(), r) });
}
use of org.apache.jena.graph.Graph in project jena by apache.
the class TestReasoners method testRDFSRebind.
/**
* Test rebind operation for the RDFS reasoner
*/
public void testRDFSRebind() {
Graph data = Factory.createGraphMem();
Node C1 = NodeFactory.createURI("C1");
Node C2 = NodeFactory.createURI("C2");
Node C3 = NodeFactory.createURI("C3");
Node C4 = NodeFactory.createURI("C4");
data.add(new Triple(C1, RDFS.subClassOf.asNode(), C2));
data.add(new Triple(C2, RDFS.subClassOf.asNode(), C3));
Reasoner reasoner = RDFSRuleReasonerFactory.theInstance().create(null);
InfGraph infgraph = reasoner.bind(data);
TestUtil.assertIteratorValues(this, infgraph.find(C1, RDFS.subClassOf.asNode(), null), new Object[] { new Triple(C1, RDFS.subClassOf.asNode(), C1), new Triple(C1, RDFS.subClassOf.asNode(), C2), new Triple(C1, RDFS.subClassOf.asNode(), C3) });
Graph data2 = Factory.createGraphMem();
data2.add(new Triple(C1, RDFS.subClassOf.asNode(), C2));
data2.add(new Triple(C2, RDFS.subClassOf.asNode(), C4));
infgraph.rebind(data2);
TestUtil.assertIteratorValues(this, infgraph.find(C1, RDFS.subClassOf.asNode(), null), new Object[] { new Triple(C1, RDFS.subClassOf.asNode(), C1), new Triple(C1, RDFS.subClassOf.asNode(), C2), new Triple(C1, RDFS.subClassOf.asNode(), C4) });
}
Aggregations