This is an automated email from the ASF dual-hosted git repository.
xiazcy pushed a commit to branch 3.6-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
The following commit(s) were added to refs/heads/3.6-dev by this push:
new 3f130b4709 CTR commit missing feature tests
3f130b4709 is described below
commit 3f130b4709de92a2c80470353191ab7cbe71ccf4
Author: Yang Xia <[email protected]>
AuthorDate: Fri Jul 28 10:06:08 2023 -0700
CTR commit missing feature tests
---
gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs | 2 ++
gremlin-go/driver/cucumber/gremlin.go | 2 ++
.../src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js | 2 ++
gremlin-python/src/main/python/radish/gremlin.py | 2 ++
4 files changed, 8 insertions(+)
diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
index 7637b3bb86..591ceca780 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
@@ -661,6 +661,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
{"g_mergeE_id_override_prohibited", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p)
=>g.AddV("person").Property(T.Id,1).Property("name","a").AddV("person").Property(T.Id,2).Property("name","b"),
(g,p) =>g.MergeE((IDictionary<object,object>) p["xx1"]).Option(Merge.OnCreate,
(IDictionary<object,object>) p["xx2"])}},
{"g_mergeV_mergeE_combination_new_vertices", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.MergeV((IDictionary<object,object>)
p["xx1"]).As("outV").MergeV((IDictionary<object,object>)
p["xx2"]).As("inV").MergeE((IDictionary<object,object>)
p["xx3"]).Option(Merge.OutV, (ITraversal)
__.Select<object>("outV")).Option(Merge.InV, (ITraversal)
__.Select<object>("inV")), (g,p) =>g.V(), (g,p) =>g.E(), (g,p)
=>g.V(1).Out("knows").HasId(2)}},
{"g_mergeV_mergeE_combination_existing_vertices", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("person").Property(T.Id,1).AddV("person").Property(T.Id,2),
(g,p) =>g.MergeV((IDictionary<object,object>)
p["xx1"]).As("outV").MergeV((IDictionary<object,object>)
p["xx2"]).As("inV").MergeE((IDictionary<object,object>)
p["xx3"]).Option(Merge.OutV, (ITraversal)
__.Select<object>("outV")).Option(Merge.InV, (ITraversal) __.Select<obje [...]
+
{"g_V_asXvX_mergeEXxx1X_optionXMerge_onMatch_xx2X_optionXMerge_outV_selectXvXX_optionXMerge_inV_selectXvXX",
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("person").Property("name","marko").Property("age",29), (g,p)
=>g.V().As("v").MergeE((IDictionary<object,object>)
p["xx1"]).Option(Merge.OnMatch, (IDictionary<object,object>)
p["xx2"]).Option(Merge.OutV, (ITraversal)
__.Select<object>("v")).Option(Merge.InV, (ITraversal) __. [...]
{"g_mergeVXemptyX_optionXonMatch_nullX", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("person").Property("name","marko").Property("age",29), (g,p)
=>g.MergeV((IDictionary<object,object>) new Dictionary<object,object>
{}).Option(Merge.OnMatch, (IDictionary<object,object>) null), (g,p)
=>g.V().Has("person","name","marko").Has("age",29)}},
{"g_V_mergeVXemptyX_optionXonMatch_nullX", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("person").Property("name","marko").Property("age",29), (g,p)
=>g.V().MergeV((IDictionary<object,object>) new Dictionary<object,object>
{}).Option(Merge.OnMatch, (IDictionary<object,object>) null), (g,p)
=>g.V().Has("person","name","marko").Has("age",29)}},
{"g_mergeVXnullX_optionXonCreate_label_null_name_markoX", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("person").Property("name","marko").Property("age",29), (g,p)
=>g.MergeV((IDictionary<object,object>) p["xx1"])}},
@@ -709,6 +710,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
{"g_mergeV_hidden_label_value_onCreate_prohibited", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.MergeV((IDictionary<object,object>) new Dictionary<object,object>
{}).Option(Merge.OnCreate, (IDictionary<object,object>) p["xx1"])}},
{"g_mergeV_hidden_id_key_onMatch_matched_prohibited", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("vertex"), (g,p) =>g.MergeV((IDictionary<object,object>) new
Dictionary<object,object> {}).Option(Merge.OnMatch,
(IDictionary<object,object>) p["xx1"])}},
{"g_mergeV_hidden_label_key_matched_onMatch_matched_prohibited", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.AddV("vertex"), (g,p) =>g.MergeV((IDictionary<object,object>) new
Dictionary<object,object> {}).Option(Merge.OnMatch,
(IDictionary<object,object>) p["xx1"])}},
+ {"g_mergeV_hidden_label_key_onMatch_matched_prohibited", new
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>>
{(g,p) =>g.MergeV((IDictionary<object,object>) new Dictionary<object,object>
{}).Option(Merge.OnMatch, (IDictionary<object,object>) p["xx1"])}},
{"g_V_age_min", new List<Func<GraphTraversalSource,
IDictionary<string, object>, ITraversal>> {(g,p)
=>g.V().Values<object>("age").Min<object>()}},
{"g_V_foo_min", new List<Func<GraphTraversalSource,
IDictionary<string, object>, ITraversal>> {(g,p)
=>g.V().Values<object>("foo").Min<object>()}},
{"g_V_name_min", new List<Func<GraphTraversalSource,
IDictionary<string, object>, ITraversal>> {(g,p)
=>g.V().Values<object>("name").Min<object>()}},
diff --git a/gremlin-go/driver/cucumber/gremlin.go
b/gremlin-go/driver/cucumber/gremlin.go
index 66b194f6ef..04492106d1 100644
--- a/gremlin-go/driver/cucumber/gremlin.go
+++ b/gremlin-go/driver/cucumber/gremlin.go
@@ -632,6 +632,7 @@ var translationMap = map[string][]func(g
*gremlingo.GraphTraversalSource, p map[
"g_mergeE_id_override_prohibited": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property(gremlingo.T.Id,
1).Property("name", "a").AddV("person").Property(gremlingo.T.Id,
2).Property("name", "b")}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.MergeE(p["xx1"]).Option(gremlingo.Merge.OnCreate, p["xx2"])}},
"g_mergeV_mergeE_combination_new_vertices": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(p["xx1"]).As("outV").MergeV(p["xx2"]).As("inV").MergeE(p["xx3"]).Option(gremlingo.Merge.OutV,
gremlingo.T__.Select("outV")).Option(gremlingo.Merge.InV,
gremlingo.T__.Select("inV"))}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return g.V()}, func(g
*gremlingo.GraphTraversalSource, p m [...]
"g_mergeV_mergeE_combination_existing_vertices": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property(gremlingo.T.Id,
1).AddV("person").Property(gremlingo.T.Id, 2)}, func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(p["xx1"]).As("outV").MergeV(p["xx2"]).As("inV").MergeE(p["xx3"]).Option(gremlingo.Merge.OutV,
gremlingo.T__.Select("outV")).Option(gremling [...]
+
"g_V_asXvX_mergeEXxx1X_optionXMerge_onMatch_xx2X_optionXMerge_outV_selectXvXX_optionXMerge_inV_selectXvXX":
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property("name",
"marko").Property("age", 29)}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.V().As("v").MergeE(p["xx1"]).Option(gremlingo.Merge.OnMatch,
p["xx2"]).Option(gremlingo.Merge.OutV, gremlingo.T_ [...]
"g_mergeVXemptyX_optionXonMatch_nullX": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property("name",
"marko").Property("age", 29)}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnMatch, nil)},
func(g *gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.V [...]
"g_V_mergeVXemptyX_optionXonMatch_nullX": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property("name",
"marko").Property("age", 29)}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.V().MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnMatch,
nil)}, func(g *gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {retu [...]
"g_mergeVXnullX_optionXonCreate_label_null_name_markoX": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("person").Property("name",
"marko").Property("age", 29)}, func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return g.MergeV(p["xx1"])}},
@@ -680,6 +681,7 @@ var translationMap = map[string][]func(g
*gremlingo.GraphTraversalSource, p map[
"g_mergeV_hidden_label_value_onCreate_prohibited": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnCreate,
p["xx1"])}},
"g_mergeV_hidden_id_key_onMatch_matched_prohibited": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("vertex")}, func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnMatch,
p["xx1"])}},
"g_mergeV_hidden_label_key_matched_onMatch_matched_prohibited": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return g.AddV("vertex")}, func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnMatch,
p["xx1"])}},
+ "g_mergeV_hidden_label_key_onMatch_matched_prohibited": {func(g
*gremlingo.GraphTraversalSource, p map[string]interface{})
*gremlingo.GraphTraversal {return
g.MergeV(map[interface{}]interface{}{}).Option(gremlingo.Merge.OnMatch,
p["xx1"])}},
"g_V_age_min": {func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.V().Values("age").Min()}},
"g_V_foo_min": {func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.V().Values("foo").Min()}},
"g_V_name_min": {func(g *gremlingo.GraphTraversalSource, p
map[string]interface{}) *gremlingo.GraphTraversal {return
g.V().Values("name").Min()}},
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 df711c6f4e..2a8350e03e 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
@@ -651,6 +651,7 @@ const gremlins = {
g_mergeE_id_override_prohibited: [function({g, xx1, xx2}) { return
g.addV("person").property(T.id,1).property("name","a").addV("person").property(T.id,2).property("name","b")
}, function({g, xx1, xx2}) { return g.mergeE(xx1).option(Merge.onCreate,xx2)
}],
g_mergeV_mergeE_combination_new_vertices: [function({g, xx1, xx3, xx2}) {
return
g.mergeV(xx1).as("outV").mergeV(xx2).as("inV").mergeE(xx3).option(Merge.outV,__.select("outV")).option(Merge.inV,__.select("inV"))
}, function({g, xx1, xx3, xx2}) { return g.V() }, function({g, xx1, xx3, xx2})
{ return g.E() }, function({g, xx1, xx3, xx2}) { return
g.V(1).out("knows").hasId(2) }],
g_mergeV_mergeE_combination_existing_vertices: [function({g, xx1, xx3,
xx2}) { return
g.addV("person").property(T.id,1).addV("person").property(T.id,2) },
function({g, xx1, xx3, xx2}) { return
g.mergeV(xx1).as("outV").mergeV(xx2).as("inV").mergeE(xx3).option(Merge.outV,__.select("outV")).option(Merge.inV,__.select("inV"))
}, function({g, xx1, xx3, xx2}) { return g.V() }, function({g, xx1, xx3, xx2})
{ return g.E() }, function({g, xx1, xx3, xx2}) { return
g.V(1).out("knows").hasId(2) }],
+
g_V_asXvX_mergeEXxx1X_optionXMerge_onMatch_xx2X_optionXMerge_outV_selectXvXX_optionXMerge_inV_selectXvXX:
[function({g, xx1, xx2}) { return
g.addV("person").property("name","marko").property("age",29) }, function({g,
xx1, xx2}) { return
g.V().as("v").mergeE(xx1).option(Merge.onMatch,xx2).option(Merge.outV,__.select("v")).option(Merge.inV,__.select("v"))
}],
g_mergeVXemptyX_optionXonMatch_nullX: [function({g}) { return
g.addV("person").property("name","marko").property("age",29) }, function({g}) {
return g.mergeV(new Map([])).option(Merge.onMatch,null) }, function({g}) {
return g.V().has("person","name","marko").has("age",29) }],
g_V_mergeVXemptyX_optionXonMatch_nullX: [function({g}) { return
g.addV("person").property("name","marko").property("age",29) }, function({g}) {
return g.V().mergeV(new Map([])).option(Merge.onMatch,null) }, function({g}) {
return g.V().has("person","name","marko").has("age",29) }],
g_mergeVXnullX_optionXonCreate_label_null_name_markoX: [function({g, xx1})
{ return g.addV("person").property("name","marko").property("age",29) },
function({g, xx1}) { return g.mergeV(xx1) }],
@@ -699,6 +700,7 @@ const gremlins = {
g_mergeV_hidden_label_value_onCreate_prohibited: [function({g, xx1}) {
return g.mergeV(new Map([])).option(Merge.onCreate,xx1) }],
g_mergeV_hidden_id_key_onMatch_matched_prohibited: [function({g, xx1}) {
return g.addV("vertex") }, function({g, xx1}) { return g.mergeV(new
Map([])).option(Merge.onMatch,xx1) }],
g_mergeV_hidden_label_key_matched_onMatch_matched_prohibited:
[function({g, xx1}) { return g.addV("vertex") }, function({g, xx1}) { return
g.mergeV(new Map([])).option(Merge.onMatch,xx1) }],
+ g_mergeV_hidden_label_key_onMatch_matched_prohibited: [function({g, xx1})
{ return g.mergeV(new Map([])).option(Merge.onMatch,xx1) }],
g_V_age_min: [function({g}) { return g.V().values("age").min() }],
g_V_foo_min: [function({g}) { return g.V().values("foo").min() }],
g_V_name_min: [function({g}) { return g.V().values("name").min() }],
diff --git a/gremlin-python/src/main/python/radish/gremlin.py
b/gremlin-python/src/main/python/radish/gremlin.py
index fb08e48f5c..bcc2e3b14b 100644
--- a/gremlin-python/src/main/python/radish/gremlin.py
+++ b/gremlin-python/src/main/python/radish/gremlin.py
@@ -633,6 +633,7 @@ world.gremlins = {
'g_mergeE_id_override_prohibited': [(lambda g,
xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')),
(lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2))],
'g_mergeV_mergeE_combination_new_vertices': [(lambda g,
xx1=None,xx3=None,xx2=None:g.merge_v(xx1).as_('outV').merge_v(xx2).as_('inV').merge_e(xx3).option(Merge.out_v,__.select('outV')).option(Merge.in_v,__.select('inV'))),
(lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g,
xx1=None,xx3=None,xx2=None:g.E()), (lambda g,
xx1=None,xx3=None,xx2=None:g.V(1).out('knows').hasId(2))],
'g_mergeV_mergeE_combination_existing_vertices': [(lambda g,
xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,1).addV('person').property(T.id_,2)),
(lambda g,
xx1=None,xx3=None,xx2=None:g.merge_v(xx1).as_('outV').merge_v(xx2).as_('inV').merge_e(xx3).option(Merge.out_v,__.select('outV')).option(Merge.in_v,__.select('inV'))),
(lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g,
xx1=None,xx3=None,xx2=None:g.E()), (lambda g,
xx1=None,xx3=None,xx2=None:g.V(1).out('knows').ha [...]
+
'g_V_asXvX_mergeEXxx1X_optionXMerge_onMatch_xx2X_optionXMerge_outV_selectXvXX_optionXMerge_inV_selectXvXX':
[(lambda g,
xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)),
(lambda g,
xx1=None,xx2=None:g.V().as_('v').merge_e(xx1).option(Merge.on_match,xx2).option(Merge.out_v,__.select('v')).option(Merge.in_v,__.select('v')))],
'g_mergeVXemptyX_optionXonMatch_nullX': [(lambda
g:g.addV('person').property('name','marko').property('age',29)), (lambda
g:g.merge_v({}).option(Merge.on_match,None)), (lambda
g:g.V().has('person','name','marko').has('age',29))],
'g_V_mergeVXemptyX_optionXonMatch_nullX': [(lambda
g:g.addV('person').property('name','marko').property('age',29)), (lambda
g:g.V().merge_v({}).option(Merge.on_match,None)), (lambda
g:g.V().has('person','name','marko').has('age',29))],
'g_mergeVXnullX_optionXonCreate_label_null_name_markoX': [(lambda g,
xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda
g, xx1=None:g.merge_v(xx1))],
@@ -681,6 +682,7 @@ world.gremlins = {
'g_mergeV_hidden_label_value_onCreate_prohibited': [(lambda g,
xx1=None:g.merge_v({}).option(Merge.on_create,xx1))],
'g_mergeV_hidden_id_key_onMatch_matched_prohibited': [(lambda g,
xx1=None:g.addV('vertex')), (lambda g,
xx1=None:g.merge_v({}).option(Merge.on_match,xx1))],
'g_mergeV_hidden_label_key_matched_onMatch_matched_prohibited': [(lambda
g, xx1=None:g.addV('vertex')), (lambda g,
xx1=None:g.merge_v({}).option(Merge.on_match,xx1))],
+ 'g_mergeV_hidden_label_key_onMatch_matched_prohibited': [(lambda g,
xx1=None:g.merge_v({}).option(Merge.on_match,xx1))],
'g_V_age_min': [(lambda g:g.V().age.min_())],
'g_V_foo_min': [(lambda g:g.V().foo.min_())],
'g_V_name_min': [(lambda g:g.V().name.min_())],