[ 
https://issues.apache.org/jira/browse/TINKERPOP-2234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18030739#comment-18030739
 ] 

ASF GitHub Bot commented on TINKERPOP-2234:
-------------------------------------------

spmallette commented on code in PR #3211:
URL: https://github.com/apache/tinkerpop/pull/3211#discussion_r2441071821


##########
gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/data/Byte.feature:
##########
@@ -0,0 +1,132 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+@StepClassData @DataByte

Review Comment:
   This approach to test organization looks a lot better, however, i'm not sure 
the `@DataByte` (and associated annotations of similar type) are doing what 
they need to. I could have forgotten the conversation, but i thought the 
implication of this annotation was that a graph might not support `BYTE` and 
therefore opt out of this test, but the way the tests are written, can't every 
graph support these tests because we start with an int that every graph will 
store and then us Gremlin conversion steps to get them to `BYTE`? You could 
have equally done this with the modern graph and the "age" property.
   
   That said, this setup isn't bad at all and it paves the way for us to 
actually test: `g.addV("data").property("byte", 5b)` so that we actually 
validate these types through the grammar. I think that these individual tests 
could have a `@DataByteStore` annotation so that providers who didn't support 
that type could drop just those tests. 
   
   You don't need to do this for this PR, but I think we want that sort of 
testing place in time for 3.8.0 as a follow-on task to this merging. 
   
   One thing that shouldn't be missed is that you've added new test annotations 
with all this - there should be an update to the dev docs to describe all of 
these.





> Introduce Type Predicate
> ------------------------
>
>                 Key: TINKERPOP-2234
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2234
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: process
>    Affects Versions: 3.4.2
>            Reporter: Stephen Mallette
>            Priority: Major
>
> Provide for a {{typeOf()}} predicate that allows for testing the type of an 
> object which would enable neat things like:
> {code}
> g.V().outE().has('weight',gt(0.1)).inV().path().unfold().is(typeOf(VERTEX))
> {code}
> See the linked DISCUSS thread for more information.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to