Search in sources :

Example 6 with Path

use of org.neo4j.driver.v1.types.Path in project cypher-for-gremlin by opencypher.

the class GremlinNeo4jDriverTest method returnPath.

@Test
public void returnPath() {
    Driver driver = GremlinDatabase.driver("//localhost:" + server.getPort());
    try (Session session = driver.session()) {
        StatementResult setup = session.run("CREATE (n1:Person {name: 'Anders'})-[r:knows]->(n2:Person)" + "RETURN n1,r,n2");
        Record createdNodes = setup.single();
        Node n1 = createdNodes.get("n1").asNode();
        Node n2 = createdNodes.get("n2").asNode();
        Relationship r = createdNodes.get("r").asRelationship();
        StatementResult result = session.run("MATCH p =(b1 { name: 'Anders' })-->()" + "RETURN p");
        Path path = result.single().get("p").asPath();
        assertThat(path.contains(n1)).isTrue();
        assertThat(path.contains(n2)).isTrue();
        assertThat(path.contains(r)).isTrue();
        assertThat(path.relationships()).hasSize(1);
        assertThat(path.nodes()).hasSize(2);
    }
}
Also used : Path(org.neo4j.driver.v1.types.Path) StatementResult(org.neo4j.driver.v1.StatementResult) Node(org.neo4j.driver.v1.types.Node) Relationship(org.neo4j.driver.v1.types.Relationship) Driver(org.neo4j.driver.v1.Driver) Record(org.neo4j.driver.v1.Record) Session(org.neo4j.driver.v1.Session) Test(org.junit.Test)

Aggregations

Driver (org.neo4j.driver.v1.Driver)5 PathInfoData (org.openkilda.messaging.info.event.PathInfoData)5 Flow (org.openkilda.messaging.model.Flow)4 Record (org.neo4j.driver.v1.Record)2 Session (org.neo4j.driver.v1.Session)2 StatementResult (org.neo4j.driver.v1.StatementResult)2 Relationship (org.neo4j.driver.v1.types.Relationship)2 Test (org.junit.Test)1 Statement (org.neo4j.driver.v1.Statement)1 NoSuchRecordException (org.neo4j.driver.v1.exceptions.NoSuchRecordException)1 Node (org.neo4j.driver.v1.types.Node)1 Path (org.neo4j.driver.v1.types.Path)1 PathNode (org.openkilda.messaging.info.event.PathNode)1 ImmutablePair (org.openkilda.messaging.model.ImmutablePair)1