This is an automated email from the ASF dual-hosted git repository.

colegreer pushed a commit to branch 3.7-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


The following commit(s) were added to refs/heads/3.7-dev by this push:
     new 3976dbf884 Add true case tests for checkAdjacentVertices configuration 
(#2502)
3976dbf884 is described below

commit 3976dbf88446969be4f40d213a02b72d1324888a
Author: Ryan Tan <65996005+r...@users.noreply.github.com>
AuthorDate: Thu Feb 29 08:31:14 2024 -0800

    Add true case tests for checkAdjacentVertices configuration (#2502)
    
    https://issues.apache.org/jira/browse/TINKERPOP-3026 Added tests to cover 
checkAdjacentVertices = true in SubgraphStrategy configuration.
---
 .../Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs |  2 ++
 gremlin-go/driver/cucumber/gremlin.go              |  2 ++
 .../gremlin-javascript/test/cucumber/gremlin.js    |  2 ++
 gremlin-python/src/main/python/radish/gremlin.py   |  2 ++
 .../features/integrated/SubgraphStrategy.feature   | 32 +++++++++++++++++++++-
 5 files changed, 39 insertions(+), 1 deletion(-)

diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
index ccfa82b240..fd96bdc6ea 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
@@ -478,6 +478,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
                
{"g_withStrategiesXSubgraphStrategyXedges_hasLabelXusesX_hasXskill_5XXX_V_outE_valueMap_selectXvaluesX_unfold",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: true, 
edges: 
__.HasLabel("uses").Has("skill",5))).V().OutE().ValueMap<object,object>().Select<object>(Column.Values).Unfold<object>()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_V", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).V()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_E", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E()}},
 
+               
{"g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_E", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: true, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).V(p["vid4"]).OutE()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_inE", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).V(p["vid4"]).InE()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_out", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).V(p["vid4"]).Out()}},
 
@@ -488,6 +489,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX11X_bothV", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E(p["eid11"]).BothV()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX12X_bothV", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E(p["eid12"]).BothV()}},
 
                {"g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX9X_bothV", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: false, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E(p["eid9"]).BothV()}},
 
+               
{"g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_EX9X_bothV",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new SubgraphStrategy(checkAdjacentVertices: true, 
vertices: __.Has("name",P.Within(new List<object> {"josh", "lop", "ripple"})), 
edges: 
__.Or(__.Has("weight",0.4).HasLabel("created"),__.Has("weight",1.0).HasLabel("created")))).E(p["eid9"]).BothV()}},
 
                {"g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").Property("age",29).As("marko").AddV("person").Property("name","vadas").Property("age",27).As("vadas").AddV("software").Property("name","lop").Property("lang","java").As("lop").AddV("person").Property("name","josh").Property("age",32).As("josh").AddV("software").Property("name","ripple").Property
 [...]
                
{"g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").Property("age",29).As("marko").AddV("person").Property("name","vadas").Property("age",27).As("vadas").AddV("software").Property("name","lop").Property("lang","java").As("lop").AddV("person").Property("name","josh").Property("age",32).As("josh").AddV("software").Property("name"
 [...]
                {"g_V_outE_propertyXweight_nullX", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").Property("age",29).As("marko").AddV("person").Property("name","vadas").Property("age",27).As("vadas").AddV("software").Property("name","lop").Property("lang","java").As("lop").AddV("person").Property("name","josh").Property("age",32).As("josh").AddV("software").Property("name","ripple").Property("lang","java").A
 [...]
diff --git a/gremlin-go/driver/cucumber/gremlin.go 
b/gremlin-go/driver/cucumber/gremlin.go
index b46ea7b6ad..fbcf1ac259 100644
--- a/gremlin-go/driver/cucumber/gremlin.go
+++ b/gremlin-go/driver/cucumber/gremlin.go
@@ -449,6 +449,7 @@ var translationMap = map[string][]func(g 
*gremlingo.GraphTraversalSource, p map[
     
"g_withStrategiesXSubgraphStrategyXedges_hasLabelXusesX_hasXskill_5XXX_V_outE_valueMap_selectXvaluesX_unfold":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 true, Edges: gremlingo.T__.HasLabel("uses").Has("skill", 
5)})).V().OutE().ValueMap().Select(gremlingo.Column.Values).Unfold()}}, 
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_V": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("created"))} [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_E": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("created"))} [...]
+    "g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_E": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 true, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0). [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("cre [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_inE": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("crea [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_out": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("crea [...]
@@ -459,6 +460,7 @@ var translationMap = map[string][]func(g 
*gremlingo.GraphTraversalSource, p map[
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX11X_bothV": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("c [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX12X_bothV": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("c [...]
     "g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX9X_bothV": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 false, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weight", 1.0).HasLabel("cr [...]
+    
"g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_EX9X_bothV":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.SubgraphStrategy(gremlingo.SubgraphStrategyConfig{CheckAdjacentVertices:
 true, Vertices: gremlingo.T__.Has("name", 
gremlingo.P.Within([]interface{}{"josh", "lop", "ripple"})), Edges: 
gremlingo.T__.Or(gremlingo.T__.Has("weight", 0.4).HasLabel("created"), 
gremlingo.T__.Has("weigh [...]
     "g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").Property("age", 29).As("marko").AddV("person").Property("name", 
"vadas").Property("age", 27).As("vadas").AddV("software").Property("name", 
"lop").Property("lang", "java").As("lop").AddV("person").Property("name", 
"josh").Property("age", 32).As("josh").AddV("software").Property("name", 
"ripple [...]
     "g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").Property("age", 29).As("marko").AddV("person").Property("name", 
"vadas").Property("age", 27).As("vadas").AddV("software").Property("name", 
"lop").Property("lang", "java").As("lop").AddV("person").Property("name", 
"josh").Property("age", 32).As("josh").AddV("software").Prope [...]
     "g_V_outE_propertyXweight_nullX": {func(g *gremlingo.GraphTraversalSource, 
p map[string]interface{}) *gremlingo.GraphTraversal {return 
g.AddV("person").Property("name", "marko").Property("age", 
29).As("marko").AddV("person").Property("name", "vadas").Property("age", 
27).As("vadas").AddV("software").Property("name", "lop").Property("lang", 
"java").As("lop").AddV("person").Property("name", "josh").Property("age", 
32).As("josh").AddV("software").Property("name", "ripple").Property("lang [...]
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
index 804381b574..2e733673da 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
@@ -469,6 +469,7 @@ const gremlins = {
     
g_withStrategiesXSubgraphStrategyXedges_hasLabelXusesX_hasXskill_5XXX_V_outE_valueMap_selectXvaluesX_unfold:
 [function({g}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:true,edges:__.hasLabel("uses").has("skill",5)})).V().outE().valueMap().select(Column.values).unfold()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_V: [function({g}) { return 
g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).V()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_E: [function({g}) { return 
g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E()
 }], 
+    g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_E: 
[function({g}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:true,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE: [function({g, 
vid4}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).V(vid4).outE()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_inE: [function({g, 
vid4}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).V(vid4).inE()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_out: [function({g, 
vid4}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).V(vid4).out()
 }], 
@@ -479,6 +480,7 @@ const gremlins = {
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX11X_bothV: [function({g, 
eid11}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E(eid11).bothV()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX12X_bothV: [function({g, 
eid12}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E(eid12).bothV()
 }], 
     g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX9X_bothV: [function({g, 
eid9}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:false,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E(eid9).bothV()
 }], 
+    
g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_EX9X_bothV: 
[function({g, eid9}) { return g.withStrategies(new 
SubgraphStrategy({checkAdjacentVertices:true,vertices:__.has("name",P.within(["josh",
 "lop", 
"ripple"])),edges:__.or(__.has("weight",0.4).hasLabel("created"),__.has("weight",1.0).hasLabel("created"))})).E(eid9).bothV()
 }], 
     g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX: [function({g, vid1}) { 
return 
g.addV("person").property("name","marko").property("age",29).as("marko").addV("person").property("name","vadas").property("age",27).as("vadas").addV("software").property("name","lop").property("lang","java").as("lop").addV("person").property("name","josh").property("age",32).as("josh").addV("software").property("name","ripple").property("lang","java").as("ripple").addV("person").property("name","peter").pr
 [...]
     g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X: 
[function({g, vid1}) { return 
g.addV("person").property("name","marko").property("age",29).as("marko").addV("person").property("name","vadas").property("age",27).as("vadas").addV("software").property("name","lop").property("lang","java").as("lop").addV("person").property("name","josh").property("age",32).as("josh").addV("software").property("name","ripple").property("lang","java").as("ripple").addV("person").property
 [...]
     g_V_outE_propertyXweight_nullX: [function({g}) { return 
g.addV("person").property("name","marko").property("age",29).as("marko").addV("person").property("name","vadas").property("age",27).as("vadas").addV("software").property("name","lop").property("lang","java").as("lop").addV("person").property("name","josh").property("age",32).as("josh").addV("software").property("name","ripple").property("lang","java").as("ripple").addV("person").property("name","peter").property("age",35).as("pe
 [...]
diff --git a/gremlin-python/src/main/python/radish/gremlin.py 
b/gremlin-python/src/main/python/radish/gremlin.py
index 93352812dc..34cab041d8 100644
--- a/gremlin-python/src/main/python/radish/gremlin.py
+++ b/gremlin-python/src/main/python/radish/gremlin.py
@@ -451,6 +451,7 @@ world.gremlins = {
     
'g_withStrategiesXSubgraphStrategyXedges_hasLabelXusesX_hasXskill_5XXX_V_outE_valueMap_selectXvaluesX_unfold':
 [(lambda 
g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.hasLabel('uses').has('skill',5)},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().outE().valueMap().select(Column.values).unfold())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_V': [(lambda 
g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_E': [(lambda 
g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())],
 
+    'g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_E': 
[(lambda 
g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE': [(lambda g, 
vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).outE())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_inE': [(lambda g, 
vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).inE())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_out': [(lambda g, 
vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out())],
 
@@ -461,6 +462,7 @@ world.gremlins = {
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX11X_bothV': [(lambda g, 
eid11=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid11).bothV())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX12X_bothV': [(lambda g, 
eid12=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid12).bothV())],
 
     'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX9X_bothV': [(lambda g, 
eid9=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid9).bothV())],
 
+    
'g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_EX9X_bothV':
 [(lambda g, 
eid9=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid9).bothV())],
 
     'g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX': [(lambda g, 
vid1=None:g.addV('person').property('name','marko').property('age',29).as_('marko').addV('person').property('name','vadas').property('age',27).as_('vadas').addV('software').property('name','lop').property('lang','java').as_('lop').addV('person').property('name','josh').property('age',32).as_('josh').addV('software').property('name','ripple').property('lang','java').as_('ripple').addV('person').property('name','peter').pro
 [...]
     'g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X': 
[(lambda g, 
vid1=None:g.addV('person').property('name','marko').property('age',29).as_('marko').addV('person').property('name','vadas').property('age',27).as_('vadas').addV('software').property('name','lop').property('lang','java').as_('lop').addV('person').property('name','josh').property('age',32).as_('josh').addV('software').property('name','ripple').property('lang','java').as_('ripple').addV('person').property(
 [...]
     'g_V_outE_propertyXweight_nullX': [(lambda 
g:g.addV('person').property('name','marko').property('age',29).as_('marko').addV('person').property('name','vadas').property('age',27).as_('vadas').addV('software').property('name','lop').property('lang','java').as_('lop').addV('person').property('name','josh').property('age',32).as_('josh').addV('software').property('name','ripple').property('lang','java').as_('ripple').addV('person').property('name','peter').property('age',35).as_('peter')
 [...]
diff --git 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/SubgraphStrategy.feature
 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/SubgraphStrategy.feature
index 567e79dda2..f31c26f646 100644
--- 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/SubgraphStrategy.feature
+++ 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/SubgraphStrategy.feature
@@ -758,6 +758,22 @@ Feature: Step - SubgraphStrategy
       | e[josh-created->lop] |
       | e[josh-created->ripple] |
 
+  @WithSubgraphStrategy @GraphComputerVerificationStarGraphExceeded
+  Scenario: 
g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_E
+    Given the modern graph
+    And the traversal of
+      """
+      g.withStrategies(new SubgraphStrategy(checkAdjacentVertices: true,
+                                            vertices: __.has("name", 
P.within("josh", "lop", "ripple")),
+                                            edges: __.or(__.has("weight", 
0.4).hasLabel("created"),
+                                                         __.has("weight", 
1.0).hasLabel("created")))).E()
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | e[josh-created->lop] |
+      | e[josh-created->ripple] |
+
   @WithSubgraphStrategy @GraphComputerVerificationStarGraphExceeded
   Scenario: g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE
     Given the modern graph
@@ -913,4 +929,18 @@ Feature: Step - SubgraphStrategy
     When iterated to list
     Then the result should be unordered
       | result |
-      | v[lop] |
\ No newline at end of file
+      | v[lop] |
+
+  @WithSubgraphStrategy @GraphComputerVerificationStarGraphExceeded
+  Scenario: 
g_withStrategiesXSubgraphStrategyXcheckAdjacentVertices_subgraphDXX_EX9X_bothV
+    Given the modern graph
+    And using the parameter eid9 defined as "e[marko-created->lop].id"
+    And the traversal of
+      """
+      g.withStrategies(new SubgraphStrategy(checkAdjacentVertices: true,
+                                            vertices: __.has("name", 
P.within("josh", "lop", "ripple")),
+                                            edges: __.or(__.has("weight", 
0.4).hasLabel("created"),
+                                                         __.has("weight", 
1.0).hasLabel("created")))).E(eid9).bothV()
+      """
+    When iterated to list
+    Then the result should be empty
\ No newline at end of file

Reply via email to