use of com.tinkerpop.blueprints.Edge in project frames by tinkerpop.
the class TypedGraphModuleTest method testWildcard.
public void testWildcard() {
Graph graph = new TinkerGraph();
FramedGraphFactory factory = new FramedGraphFactory(new TypedGraphModuleBuilder().withClass(A.class).withClass(B.class).withClass(C.class).build());
FramedGraph<Graph> framedGraph = factory.create(graph);
Vertex v1 = graph.addVertex(null);
Vertex v2 = graph.addVertex(null);
v2.setProperty("type", "A");
Edge cE = graph.addEdge(null, v1, v2, "label");
cE.setProperty("type", "C");
Base c = framedGraph.getEdge(cE.getId(), Direction.OUT, Base.class);
assertTrue(c instanceof C);
assertTrue(((C) c).getInVertex() instanceof A);
}
use of com.tinkerpop.blueprints.Edge in project frames by tinkerpop.
the class FramedGraphTest method testCreateFrameForNonexistantElements.
public void testCreateFrameForNonexistantElements() {
Graph graph = new TinkerGraph();
FramedGraph<Graph> framedGraph = new FramedGraphFactory().create(graph);
Person vertex = framedGraph.getVertex(-1, Person.class);
Assert.assertNull(vertex);
vertex = framedGraph.frame((Vertex) null, Person.class);
Assert.assertNull(vertex);
Knows edge = framedGraph.getEdge(-1, Knows.class);
Assert.assertNull(edge);
edge = framedGraph.frame((Edge) null, Knows.class);
Assert.assertNull(edge);
}
use of com.tinkerpop.blueprints.Edge in project frames by tinkerpop.
the class FramedGraphTest method testCreateFrame.
public void testCreateFrame() {
Graph graph = new TinkerGraph();
FramedGraph<Graph> framedGraph = new FramedGraphFactory().create(graph);
Person person = framedGraph.addVertex(null, Person.class);
assertEquals(person.asVertex(), graph.getVertices().iterator().next());
int counter = 0;
for (Vertex v : graph.getVertices()) {
counter++;
}
assertEquals(counter, 1);
counter = 0;
for (Edge e : graph.getEdges()) {
counter++;
}
assertEquals(counter, 0);
Person person2 = framedGraph.addVertex("aPerson", Person.class);
assertEquals(person2.asVertex().getId(), "aPerson");
counter = 0;
for (Vertex v : graph.getVertices()) {
counter++;
}
assertEquals(counter, 2);
}
use of com.tinkerpop.blueprints.Edge in project frames by tinkerpop.
the class FramedGraphQueryImplTest method testDelegation.
@Test
public void testDelegation() {
GraphQuery mockGraphQuery = mock(GraphQuery.class);
FramedGraph framedGraph = new FramedGraphFactory().create(null);
FramedGraphQueryImpl query = new FramedGraphQueryImpl(framedGraph, mockGraphQuery);
stub(mockGraphQuery.has("")).toReturn(mockGraphQuery);
query.has("");
verify(mockGraphQuery).has("");
stub(mockGraphQuery.has("", "bar")).toReturn(mockGraphQuery);
query.has("", "bar");
verify(mockGraphQuery).has("", "bar");
Predicate predicate = new Predicate() {
@Override
public boolean evaluate(Object first, Object second) {
return false;
}
};
stub(mockGraphQuery.has("", predicate, "bar")).toReturn(mockGraphQuery);
query.has("", predicate, "bar");
verify(mockGraphQuery).has(eq(""), same(predicate), eq("bar"));
stub(mockGraphQuery.has("", 2, Compare.EQUAL)).toReturn(mockGraphQuery);
query.has("", 2, Compare.EQUAL);
verify(mockGraphQuery).has(eq(""), same(2), eq(Compare.EQUAL));
stub(mockGraphQuery.hasNot("")).toReturn(mockGraphQuery);
query.hasNot("");
verify(mockGraphQuery).hasNot(eq(""));
stub(mockGraphQuery.hasNot("", "bar")).toReturn(mockGraphQuery);
query.hasNot("", "bar");
verify(mockGraphQuery).hasNot(eq(""), eq("bar"));
stub(mockGraphQuery.interval("", "bar", "bif")).toReturn(mockGraphQuery);
query.interval("", "bar", "bif");
verify(mockGraphQuery).interval(eq(""), eq("bar"), eq("bif"));
stub(mockGraphQuery.limit(1)).toReturn(mockGraphQuery);
query.limit(1);
verify(mockGraphQuery).limit(1);
List<Vertex> v = new ArrayList<Vertex>();
stub(mockGraphQuery.vertices()).toReturn(v);
query.vertices();
verify(mockGraphQuery).vertices();
Iterable<Person> people = query.vertices(Person.class);
verify(mockGraphQuery, times(2)).vertices();
assertFalse(people.iterator().hasNext());
List<Edge> e = new ArrayList<Edge>();
stub(mockGraphQuery.edges()).toReturn(e);
query.edges();
verify(mockGraphQuery).edges();
Iterable<Knows> knows = query.edges(Knows.class);
verify(mockGraphQuery, times(2)).edges();
assertFalse(knows.iterator().hasNext());
}
use of com.tinkerpop.blueprints.Edge in project titan by thinkaurelius.
the class AllEdgesIterator method findNext.
private Edge findNext() {
Edge rel = null;
while (rel == null) {
if (currentEdges.hasNext()) {
rel = currentEdges.next();
if (vertices != null && !vertices.contains(rel.getVertex(Direction.IN)))
rel = null;
} else {
if (vertexIter.hasNext()) {
Vertex nextVertex = vertexIter.next();
currentEdges = nextVertex.getEdges(Direction.OUT).iterator();
} else
break;
}
}
return rel;
}
Aggregations