[
https://issues.apache.org/jira/browse/TINKERPOP-3056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17817066#comment-17817066
]
ASF GitHub Bot commented on TINKERPOP-3056:
-------------------------------------------
vkagamlyk commented on code in PR #2487:
URL: https://github.com/apache/tinkerpop/pull/2487#discussion_r1488215072
##########
gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/map/MergeEdge.feature:
##########
@@ -841,3 +841,45 @@ Feature: Step - mergeE()
"""
When iterated to list
Then the traversal will raise an error with message containing text of
"Property key can not be a hidden key: ~label"
+
+ Scenario:
g_V_mergeEXlabel_knows_out_marko_in_vadasX_optionXonMatch_sideEffectXpropertyXweight_0XX_constantXemptyXX
+ Given the empty graph
+ And the graph initializer of
+ """
+ g.addV("person").property("name", "marko").as("a").
+ addV("person").property("name", "vadas").as("b").
+ addE("knows").property("weight", 1).from("a").to("b")
+ """
+ And using the parameter xx1 defined as "m[{\"t[label]\": \"knows\",
\"D[OUT]\":\"v[marko]\", \"D[IN]\":\"v[vadas]\"}]"
+ And the traversal of
+ """
+ g.V().mergeE(xx1).
+ option(Merge.onMatch, __.sideEffect(__.property("weight",
0)).constant([:]))
+ """
+ When iterated to list
+ Then the result should have a count of 2
+ And the graph should return 2 for count of "g.V()"
+ And the graph should return 0 for count of
"g.E().hasLabel(\"knows\").has(\"weight\",1)"
+ And the graph should return 1 for count of
"g.E().hasLabel(\"knows\").has(\"weight\",0)"
+ And the graph should return 0 for count of
"g.V().hasLabel(\"knows\").has(\"weight\")"
Review Comment:
```suggestion
And the graph should return 0 for count of "g.V().has(\"weight\")"
```
> mergeE is updating vertices in certain conditions
> -------------------------------------------------
>
> Key: TINKERPOP-3056
> URL: https://issues.apache.org/jira/browse/TINKERPOP-3056
> Project: TinkerPop
> Issue Type: Bug
> Components: process
> Affects Versions: 3.6.6
> Reporter: Stephen Mallette
> Priority: Blocker
>
> {code}
> gremlin> g.addV('mytestlabel').property(id, 'testA').property('timestamp',
> 1).as('a').
> ......1> addV('mytestlabel').property(id, 'testA2').property('timestamp',
> 1).as('a2').
> ......2> addE('mytestlabel').from('a').to('a2').property('timestamp',
> 2).valueMap(true)
> ==>[id:2,label:mytestlabel,timestamp:2]
> gremlin> g.V().mergeE([(T.label):'mytestlabel', (Direction.from): 'testA',
> (Direction.to):'testA2']).
> ......1> option(onMatch, sideEffect(property(single, 'timestamp',
> 4).property(single, 'edgelabel', 'exists')).
> ......2> constant([:])).valueMap(true)
> ==>[id:2,label:mytestlabel,timestamp:2]
> ==>[id:2,label:mytestlabel,timestamp:2]
> gremlin> g.V().valueMap(true)
> ==>[id:testA2,label:mytestlabel,edgelabel:[exists],timestamp:[4]]
> ==>[id:testA,label:mytestlabel,edgelabel:[exists],timestamp:[4]]
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)