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 2018/04/26 11:02:09 UTC
[3/6] tinkerpop git commit: Merge branch 'tp33'
Merge branch 'tp33'
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/4e46f718
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/4e46f718
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/4e46f718
Branch: refs/heads/TINKERPOP-1296
Commit: 4e46f718f3a1771cca7ddc35487805863655bc5e
Parents: 7fc3dcd 4eeb178
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Wed Apr 25 16:56:05 2018 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Wed Apr 25 16:56:05 2018 -0700
----------------------------------------------------------------------
CHANGELOG.asciidoc | 1 +
docs/src/recipes/shortest-path.asciidoc | 39 +++++
docs/src/reference/the-traversal.asciidoc | 18 +++
.../traversal/dsl/graph/GraphTraversal.java | 30 ++++
.../gremlin/process/traversal/dsl/graph/__.java | 14 ++
.../traversal/step/map/TraversalSelectStep.java | 157 +++++++++++++++++++
.../Process/Traversal/GraphTraversal.cs | 18 +++
.../src/Gremlin.Net/Process/Traversal/__.cs | 16 ++
gremlin-test/features/map/Select.feature | 44 ++++++
.../process/AbstractGremlinProcessTest.java | 14 ++
.../process/traversal/step/map/SelectTest.java | 49 ++++++
.../structure/TinkerGraphPlayTest.java | 111 ++++++++++---
12 files changed, 492 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/CHANGELOG.asciidoc
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/docs/src/reference/the-traversal.asciidoc
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/__.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/gremlin-test/features/map/Select.feature
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/4e46f718/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java
----------------------------------------------------------------------
diff --cc gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java
index 6a7a43b,3140004..62d6513
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java
@@@ -83,8 -83,12 +83,14 @@@ public abstract class SelectTest extend
public abstract Traversal<Vertex, Vertex> get_g_V_chooseXoutE_count_isX0X__asXaX__asXbXX_chooseXselectXaX__selectXaX__selectXbXX();
+ public abstract Traversal<Vertex, String> get_g_VX1X_groupXaX_byXconstantXaXX_byXnameX_selectXaX_selectXaX(final Object v1Id);
+
+ public abstract Traversal<Vertex, Long> get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX();
+
+ public abstract Traversal<Vertex, Double> get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX_byXmathX_plus_XX();
+
+ public abstract Traversal<Vertex, List<Vertex>> get_g_V_asXaX_outXknowsX_asXaX_selectXall_constantXaXX();
+
// below are original back()-tests
public abstract Traversal<Vertex, Vertex> get_g_VX1X_asXhereX_out_selectXhereX(final Object v1Id);
@@@ -345,14 -349,31 +351,41 @@@
@Test
@LoadGraphWith(MODERN)
+ public void g_VX1X_groupXaX_byXconstantXaXX_byXnameX_selectXaX_selectXaX() {
+ final Traversal<Vertex, String> traversal = get_g_VX1X_groupXaX_byXconstantXaXX_byXnameX_selectXaX_selectXaX(convertToVertexId("marko"));
+ printTraversalForm(traversal);
+ assertTrue(traversal.hasNext());
+ assertEquals("marko", traversal.next());
+ assertFalse(traversal.hasNext());
+ }
+
++ @Test
++ @LoadGraphWith(MODERN)
+ public void g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX() {
+ final Traversal<Vertex, Long> traversal = get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX();
+ printTraversalForm(traversal);
+ checkResults(Arrays.asList(3L, 1L, 3L, 3L, 1L, 1L), traversal);
+ }
+
+ @Test
+ @LoadGraphWith(MODERN)
+ public void g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX_byXmathX_plus_XX() {
+ final Traversal<Vertex, Double> traversal = get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX_byXmathX_plus_XX();
+ printTraversalForm(traversal);
+ checkResults(Arrays.asList(6D, 2D, 6D, 6D, 2D, 2D), traversal);
+ }
+
+ @Test
+ @LoadGraphWith(MODERN)
+ public void g_V_asXaX_outXknowsX_asXaX_selectXall_constantXaXX() {
+ final Vertex marko = convertToVertex(graph, "marko");
+ final Vertex vadas = convertToVertex(graph, "vadas");
+ final Vertex josh = convertToVertex(graph, "josh");
+ final Traversal<Vertex, List<Vertex>> traversal = get_g_V_asXaX_outXknowsX_asXaX_selectXall_constantXaXX();
+ printTraversalForm(traversal);
+ checkResults(Arrays.asList(Arrays.asList(marko, vadas), Arrays.asList(marko, josh)), traversal);
+ }
+
// below are original back()-tests
@Test
@@@ -733,12 -755,21 +766,28 @@@
return g.V().choose(__.outE().count().is(0L), __.as("a"), __.as("b")).choose(__.select("a"), __.select("a"), __.select("b"));
}
+ @Override
+ public Traversal<Vertex, String> get_g_VX1X_groupXaX_byXconstantXaXX_byXnameX_selectXaX_selectXaX(final Object v1Id) {
+ return g.V(v1Id).group("a").by(__.constant("a")).by(__.values("name"))
+ .barrier() // TODO: this barrier() should not be necessary
+ .select("a").select("a");
+ }
+
++ @Override
+ public Traversal<Vertex, Long> get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX() {
+ return g.V().as("a").group("m").by().by(__.bothE().count()).barrier().select("m").select(__.select("a"));
+ }
+
+ @Override
+ public Traversal<Vertex, Double> get_g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX_byXmathX_plus_XX() {
+ return g.V().as("a").group("m").by().by(__.bothE().count()).barrier().select("m").<Double>select(__.select("a")).by(__.math("_+_"));
+ }
+
+ @Override
+ public Traversal<Vertex, List<Vertex>> get_g_V_asXaX_outXknowsX_asXaX_selectXall_constantXaXX() {
+ return g.V().as("a").out("knows").as("a").select(Pop.all, (Traversal) __.constant("a"));
+ }
+
// below are original back()-tests
@Override