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

spmallette pushed a commit to branch TINKERPOP-3178
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 8217a12913a656a83c79ca27eda77fc572b7c279
Author: Stephen Mallette <[email protected]>
AuthorDate: Thu Jul 24 16:34:24 2025 -0400

    wip
---
 .../gremlin/test/features/branch/Choose.feature    | 72 ++++++++++++++++++++++
 1 file changed, 72 insertions(+)

diff --git 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/branch/Choose.feature
 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/branch/Choose.feature
index 6f810d6563..9ba4f40674 100644
--- 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/branch/Choose.feature
+++ 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/branch/Choose.feature
@@ -187,3 +187,75 @@ Feature: Step - choose()
       | vadas |
       | josh |
       | peter |
+
+  Scenario: 
g_V_chooseXhasLabelXpersonX_localXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX
+    Given the modern graph
+    And the traversal of
+      """
+      g.V().hasLabel("person").
+        local(choose(__.values("age")).
+                option(P.between(26, 30), __.values("name").fold()).
+                option(Pick.none, __.values("name").fold()))
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | l[marko] |
+      | l[vadas] |
+      | l[josh] |
+      | l[peter] |
+
+  Scenario: 
g_V_chooseXhasLabelXpersonX_mapXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX
+    Given the modern graph
+    And the traversal of
+      """
+      g.V().hasLabel("person").
+        map(choose(__.values("age")).
+              option(P.between(26, 30), __.values("name").fold()).
+              option(Pick.none, __.values("name").fold()))
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | l[marko] |
+      | l[vadas] |
+      | l[josh] |
+      | l[peter] |
+
+  Scenario: 
g_unionXV_VXhasLabelXpersonX_barrier_localXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX
+    Given the modern graph
+    And the traversal of
+      """
+      g.union(__.V(), __.V()).hasLabel("person").barrier().
+        local(choose(__.values("age")).
+                option(P.between(26, 30), __.values("name").fold()).
+                option(Pick.none, __.values("name").fold()))
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | l[marko, marko] |
+      | l[vadas, vadas] |
+      | l[josh, josh] |
+      | l[peter, peter] |
+
+  Scenario: 
g_unionXV_VXhasLabelXpersonX_barrier_mapXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX
+    Given the modern graph
+    And the traversal of
+      """
+      g.union(__.V(), __.V()).hasLabel("person").barrier().
+        map(choose(__.values("age")).
+              option(P.between(26, 30), __.values("name").fold()).
+              option(Pick.none, __.values("name").fold()))
+      """
+    When iterated to list
+    Then the result should be unordered
+      | result |
+      | l[marko] |
+      | l[marko] |
+      | l[vadas] |
+      | l[vadas] |
+      | l[josh] |
+      | l[josh] |
+      | l[peter] |
+      | l[peter] |
\ No newline at end of file

Reply via email to