Merge branch 'tp32' into tp33

Conflicts:
        
gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/map/GroovyAddVertexTest.groovy
        gremlin-test/features/map/AddVertex.feature
        
gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/9d5b7229
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/9d5b7229
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/9d5b7229

Branch: refs/heads/master
Commit: 9d5b72290bddfbc0b987297626427e2cfedd86d5
Parents: 012eba6 44c4073
Author: Stephen Mallette <[email protected]>
Authored: Wed Apr 25 07:27:29 2018 -0400
Committer: Stephen Mallette <[email protected]>
Committed: Wed Apr 25 07:27:29 2018 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |  1 +
 .../process/traversal/step/util/Parameters.java | 30 +++++++++++---------
 gremlin-test/features/map/AddVertex.feature     | 26 +++++++++++++++++
 .../traversal/step/map/AddVertexTest.java       | 20 +++++++++++--
 4 files changed, 62 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9d5b7229/CHANGELOG.asciidoc
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9d5b7229/gremlin-test/features/map/AddVertex.feature
----------------------------------------------------------------------
diff --cc gremlin-test/features/map/AddVertex.feature
index e58040c,996521b..5d324f3
--- a/gremlin-test/features/map/AddVertex.feature
+++ b/gremlin-test/features/map/AddVertex.feature
@@@ -309,54 -309,29 +309,80 @@@ Feature: Step - addV(
        | m[{"temp": ["test"], "name": ["lop"]}] |
        | m[{"temp": ["test"], "name": ["ripple"]}] |
  
+   Scenario: g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name
+     Given the empty graph
+     And the graph initializer of
+       """
+       g.addV("person").property(T.id, 1).property("name", 
"marko").property("age", 29).as("marko").
+         addV("person").property(T.id, 2).property("name", 
"vadas").property("age", 27).as("vadas").
+         addV("software").property(T.id, 3).property("name", 
"lop").property("lang", "java").as("lop").
+         addV("person").property(T.id, 
4).property("name","josh").property("age", 32).as("josh").
+         addV("software").property(T.id, 5).property("name", 
"ripple").property("lang", "java").as("ripple").
+         addV("person").property(T.id, 6).property("name", 
"peter").property("age", 35).as('peter').
+         addE("knows").from("marko").to("vadas").property(T.id, 
7).property("weight", 0.5).
+         addE("knows").from("marko").to("josh").property(T.id, 
8).property("weight", 1.0).
+         addE("created").from("marko").to("lop").property(T.id, 
9).property("weight", 0.4).
+         addE("created").from("josh").to("ripple").property(T.id, 
10).property("weight", 1.0).
+         addE("created").from("josh").to("lop").property(T.id, 
11).property("weight", 0.4).
+         addE("created").from("peter").to("lop").property(T.id, 
12).property("weight", 0.2)
+       """
+     And the traversal of
+       """
+       g.withSideEffect("a", "name").addV().property(__.select("a"), 
"marko").values("name")
+       """
+     When iterated to list
+     Then the result should be unordered
+       | result |
+       | marko |
 -    And the graph should return 2 for count of "g.V().has(\"name\",\"marko\")"
++    And the graph should return 2 for count of "g.V().has(\"name\",\"marko\")"
 +  Scenario: 
g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMapXtrueX
 +    Given the empty graph
 +    And the graph initializer of
 +      """
 +      g.addV("person").property(T.id, 1).property("name", 
"marko").property("age", 29).as("marko").
 +        addV("person").property(T.id, 2).property("name", 
"vadas").property("age", 27).as("vadas").
 +        addV("software").property(T.id, 3).property("name", 
"lop").property("lang", "java").as("lop").
 +        addV("person").property(T.id, 
4).property("name","josh").property("age", 32).as("josh").
 +        addV("software").property(T.id, 5).property("name", 
"ripple").property("lang", "java").as("ripple").
 +        addV("person").property(T.id, 6).property("name", 
"peter").property("age", 35).as('peter').
 +        addE("knows").from("marko").to("vadas").property(T.id, 
7).property("weight", 0.5).
 +        addE("knows").from("marko").to("josh").property(T.id, 
8).property("weight", 1.0).
 +        addE("created").from("marko").to("lop").property(T.id, 
9).property("weight", 0.4).
 +        addE("created").from("josh").to("ripple").property(T.id, 
10).property("weight", 1.0).
 +        addE("created").from("josh").to("lop").property(T.id, 
11).property("weight", 0.4).
 +        addE("created").from("peter").to("lop").property(T.id, 
12).property("weight", 0.2)
 +      """
 +    And the traversal of
 +      """
 +      g.V().as("a").has("name", 
"marko").out("created").as("b").addV(__.select("a").label()).property("test", 
__.select("b").label()).valueMap(true)
 +      """
 +    When iterated to list
 +    Then the result should have a count of 1
 +    And the graph should return 1 for count of 
"g.V().has(\"person\",\"test\",\"software\")"
 +
 +  Scenario: g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label
 +    Given the empty graph
 +    And the graph initializer of
 +      """
 +      g.addV("person").property(T.id, 1).property("name", 
"marko").property("age", 29).as("marko").
 +        addV("person").property(T.id, 2).property("name", 
"vadas").property("age", 27).as("vadas").
 +        addV("software").property(T.id, 3).property("name", 
"lop").property("lang", "java").as("lop").
 +        addV("person").property(T.id, 
4).property("name","josh").property("age", 32).as("josh").
 +        addV("software").property(T.id, 5).property("name", 
"ripple").property("lang", "java").as("ripple").
 +        addV("person").property(T.id, 6).property("name", 
"peter").property("age", 35).as('peter').
 +        addE("knows").from("marko").to("vadas").property(T.id, 
7).property("weight", 0.5).
 +        addE("knows").from("marko").to("josh").property(T.id, 
8).property("weight", 1.0).
 +        addE("created").from("marko").to("lop").property(T.id, 
9).property("weight", 0.4).
 +        addE("created").from("josh").to("ripple").property(T.id, 
10).property("weight", 1.0).
 +        addE("created").from("josh").to("lop").property(T.id, 
11).property("weight", 0.4).
 +        addE("created").from("peter").to("lop").property(T.id, 
12).property("weight", 0.2)
 +      """
 +    And the traversal of
 +      """
 +      g.addV(__.V().has("name", "marko").properties("name").key()).label()
 +      """
 +    When iterated to list
 +    Then the result should be unordered
 +      | result |
 +      | name |
 +

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/9d5b7229/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
----------------------------------------------------------------------
diff --cc 
gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
index 5823891,7cf5e6a..f732a44
--- 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
+++ 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddVertexTest.java
@@@ -37,12 -37,9 +37,10 @@@ import java.util.List
  import java.util.Map;
  
  import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
 +import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.V;
  import static 
org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.select;
- import static org.hamcrest.Matchers.containsInAnyOrder;
  import static org.junit.Assert.assertEquals;
  import static org.junit.Assert.assertFalse;
- import static org.junit.Assert.assertThat;
  import static org.junit.Assert.assertTrue;
  
  /**
@@@ -71,9 -68,14 +69,11 @@@ public abstract class AddVertexTest ext
  
      public abstract Traversal<Vertex, String> 
get_g_withSideEffectXa_markoX_addV_propertyXname_selectXaXX_name();
  
 -    public abstract Traversal<Vertex, String> 
get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name();
 +    public abstract Traversal<Vertex, String> 
get_g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label();
  
 -    // 3.0.0 DEPRECATIONS
 -    @Deprecated
 -    public abstract Traversal<Vertex, Vertex> 
get_g_V_addVXlabel_animal_age_0X();
++    public abstract Traversal<Vertex, String> 
get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name();
+ 
 -    @Deprecated
 -    public abstract Traversal<Vertex, Vertex> 
get_g_addVXlabel_person_name_stephenX();
 +    public abstract Traversal<Vertex, Map<Object, Object>> 
get_g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMapXtrueX();
  
      @Test
      @LoadGraphWith(MODERN)
@@@ -263,27 -299,14 +263,38 @@@
      @Test
      @LoadGraphWith(MODERN)
      @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, 
feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES)
+     @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, 
feature = Graph.Features.VertexFeatures.FEATURE_ADD_PROPERTY)
+     public void 
g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name() {
+         final Traversal<Vertex, String> traversal = 
get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name();
+         printTraversalForm(traversal);
+         assertEquals("marko", traversal.next());
+         assertFalse(traversal.hasNext());
+     }
+ 
++    @Test
++    @LoadGraphWith(MODERN)
++    @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, 
feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES)
 +    public void g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label() {
 +        final Traversal<Vertex, String> traversal = 
get_g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label();
 +        printTraversalForm(traversal);
 +        assertEquals("name", traversal.next());
 +        assertFalse(traversal.hasNext());
 +    }
 +
 +    @Test
 +    @LoadGraphWith(MODERN)
 +    @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, 
feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES)
 +    @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, 
feature = Graph.Features.VertexFeatures.FEATURE_ADD_PROPERTY)
 +    public void 
g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMapXtrueX()
 {
 +        final Traversal<Vertex, Map<Object,Object>> traversal = 
get_g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMapXtrueX();
 +        printTraversalForm(traversal);
 +        final Map<Object,Object> map = traversal.next();
 +        assertFalse(traversal.hasNext());
 +        assertEquals("person",map.get(T.label));
 +        assertEquals("software",((List)map.get("test")).get(0));
 +        assertEquals(1, ((List)map.get("test")).size());
 +        assertEquals(3, map.size());
 +    }
  
      public static class Traversals extends AddVertexTest {
  
@@@ -338,13 -371,8 +349,18 @@@
          }
  
          @Override
+         public Traversal<Vertex, String> 
get_g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name() {
+             return g.withSideEffect("a", 
"name").addV().property(select("a"),"marko").values("name");
+         }
++
++        @Override
 +        public Traversal<Vertex, String> 
get_g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label() {
 +            return g.addV(V().has("name", 
"marko").properties("name").key()).label();
 +        }
 +
 +        @Override
 +        public Traversal<Vertex, Map<Object, Object>> 
get_g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMapXtrueX()
 {
 +            return g.V().as("a").has("name", 
"marko").out("created").as("b").addV(select("a").label()).property("test", 
select("b").label()).valueMap(true);
 +        }
      }
  }

Reply via email to