You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2015/04/13 23:05:17 UTC
incubator-tinkerpop git commit: Add edge related HasStep tests to
enforce queries on edge id.
Repository: incubator-tinkerpop
Updated Branches:
refs/heads/master 6a2a350c5 -> 54d909f8e
Add edge related HasStep tests to enforce queries on edge id.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/54d909f8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/54d909f8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/54d909f8
Branch: refs/heads/master
Commit: 54d909f8e5be41abe45c75eee9060e2297123eed
Parents: 6a2a350
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Apr 13 17:04:42 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Apr 13 17:04:42 2015 -0400
----------------------------------------------------------------------
.../traversal/step/filter/GroovyHasTest.groovy | 10 ++++++
.../process/traversal/step/filter/HasTest.java | 36 ++++++++++++++++++--
2 files changed, 44 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/54d909f8/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
index d4512cb..b587a30 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/filter/GroovyHasTest.groovy
@@ -18,6 +18,7 @@
*/
package org.apache.tinkerpop.gremlin.process.traversal.step.filter
+import org.apache.tinkerpop.gremlin.process.traversal.T
import org.apache.tinkerpop.gremlin.process.traversal.Traversal
import org.apache.tinkerpop.gremlin.process.computer.ComputerTestHelper
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine
@@ -35,6 +36,11 @@ public abstract class GroovyHasTest {
public static class StandardTraversals extends HasTest {
@Override
+ public Traversal<Edge, Edge> get_g_EX11X_outV_outE_hasXid_10X(final Object e11Id, final Object e8Id) {
+ g.E(e11Id).outV.outE.has(T.id, e8Id);
+ }
+
+ @Override
public Traversal<Vertex, String> get_g_V_outXknowsX_hasXoutXcreatedXX_name() {
g.V.out('knows').has(__.out('created')).name
}
@@ -112,6 +118,10 @@ public abstract class GroovyHasTest {
@UseEngine(TraversalEngine.Type.COMPUTER)
public static class ComputerTraversals extends HasTest {
+ @Override
+ public Traversal<Edge, Edge> get_g_EX11X_outV_outE_hasXid_10X(final Object e11Id, final Object e8Id) {
+ ComputerTestHelper.compute("g.E($e11Id).outV.outE.has(T.id, $e8Id)", g);
+ }
@Override
public Traversal<Vertex, String> get_g_V_outXknowsX_hasXoutXcreatedXX_name() {
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/54d909f8/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
index b26af93..c036c1b 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/HasTest.java
@@ -20,6 +20,7 @@ package org.apache.tinkerpop.gremlin.process.traversal.step.filter;
import org.apache.tinkerpop.gremlin.LoadGraphWith;
import org.apache.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
+import org.apache.tinkerpop.gremlin.process.traversal.T;
import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
import org.apache.tinkerpop.gremlin.process.UseEngine;
@@ -27,12 +28,10 @@ import org.apache.tinkerpop.gremlin.structure.Compare;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Element;
import org.apache.tinkerpop.gremlin.structure.Vertex;
-import org.apache.tinkerpop.gremlin.util.StreamFactory;
import org.junit.Test;
import java.util.Arrays;
import java.util.List;
-import java.util.stream.Collectors;
import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.CREW;
import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
@@ -68,6 +67,8 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
public abstract Traversal<Edge, Edge> get_g_E_hasLabelXknowsX();
+ public abstract Traversal<Edge, Edge> get_g_EX11X_outV_outE_hasXid_10X(final Object e11Id, final Object e8Id);
+
public abstract Traversal<Edge, Edge> get_g_E_hasLabelXuses_traversesX();
public abstract Traversal<Vertex, Vertex> get_g_V_hasLabelXperson_software_blahX();
@@ -255,10 +256,41 @@ public abstract class HasTest extends AbstractGremlinProcessTest {
assertFalse(traversal.hasNext());
}
+ @Test
+ @LoadGraphWith(MODERN)
+ public void g_EX11X_outV_outE_hasXid_10X() {
+ final Object edgeId11 = convertToEdgeId("josh", "created", "lop");
+ final Object edgeId10 = convertToEdgeId("josh", "created", "ripple");
+ final Traversal<Edge, Edge> traversal = get_g_EX11X_outV_outE_hasXid_10X(edgeId11, edgeId10);
+ assert_g_EX11X(edgeId10, traversal);
+ }
+
+ @Test
+ @LoadGraphWith(MODERN)
+ public void g_EX11X_outV_outE_hasXid_10AsStringX() {
+ final Object edgeId11 = convertToEdgeId("josh", "created", "lop");
+ final Object edgeId10 = convertToEdgeId("josh", "created", "ripple");
+ final Traversal<Edge, Edge> traversal = get_g_EX11X_outV_outE_hasXid_10X(edgeId11.toString(), edgeId10.toString());
+ assert_g_EX11X(edgeId10, traversal);
+ }
+
+ private void assert_g_EX11X(final Object edgeId, final Traversal<Edge, Edge> traversal) {
+ printTraversalForm(traversal);
+ assertTrue(traversal.hasNext());
+ final Edge e = traversal.next();
+ assertEquals(edgeId, e.id());
+ assertFalse(traversal.hasNext());
+ }
+
@UseEngine(TraversalEngine.Type.STANDARD)
@UseEngine(TraversalEngine.Type.COMPUTER)
public static class Traversals extends HasTest {
@Override
+ public Traversal<Edge, Edge> get_g_EX11X_outV_outE_hasXid_10X(final Object e11Id, final Object e8Id) {
+ return g.E(e11Id).outV().outE().has(T.id, e8Id);
+ }
+
+ @Override
public Traversal<Vertex, String> get_g_V_outXknowsX_hasXoutXcreatedXX_name() {
return g.V().out("knows").has(out("created")).values("name");
}