Github user okram commented on the pull request:

    
https://github.com/apache/incubator-tinkerpop/pull/320#issuecomment-221764771
  
    Can you add some more complex tests? For instance:
    
    ```
    out().count().is(0).as("a")
    ```
    
    Also, `RangeByIsCountStrategy` doesn't have `applyPrior()` of 
`AdjacentToIncidentStrategy`. Does that matter? That is:
    
    ```
    out().count().is(0) ->
    outE().count().is(0) ->
    not(outE())
    ```
    
    We want `not(outE())` NOT `not(out())`. Can you verify that such 
compilations happen?
    
    Also, why do you make a distinction between computer and standard engines 
for this strategy?
    
    I think you should copy that pattern in the other strategy tests that 
ensure proper `__()` compilations. We can go crazy on adding patterns to make 
sure compilations are as expected. E.g.:
    
    ```
      @Parameterized.Parameters(name = "{0}")
        public static Iterable<Object[]> generateTestParameters() {
    
            return Arrays.asList(new Traversal[][]{
                    {__.outE().count(), __.outE().count()},
                    {__.bothE("knows").count(), __.bothE("knows").count()},
                    {__.properties().count(), __.properties().count()},
                    {__.properties("name").count(), 
__.properties("name").count()},
                    {__.out().count(), __.outE().count()},
                    {__.in().count(), __.inE().count()},
                    {__.both().count(), __.bothE().count()},
                    {__.out("knows").count(), __.outE("knows").count()},
                    {__.out("knows", "likes").count(), __.outE("knows", 
"likes").count()},
                    {__.filter(__.out()), __.filter(__.outE())},
                    {__.where(__.not(__.out())), __.where(__.not(__.outE()))},
                    {__.where(__.out("knows")), __.where(__.outE("knows"))},
                    {__.values().count(), __.properties().count()},
                    {__.values("name").count(), __.properties("name").count()},
                    {__.where(__.values()), __.where(__.properties())},
                    {__.and(__.out(), __.in()), __.and(__.outE(), __.inE())},
                    {__.or(__.out(), __.in()), __.or(__.outE(), __.inE())},
                    {__.out().as("a").count(), __.outE().count()},   // TODO: 
is this good?
                    {__.where(__.as("a").out("knows").as("b")), 
__.where(__.as("a").out("knows").as("b"))}});
        }
    ```
    



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to