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

Julian Hyde commented on CALCITE-2462:
--------------------------------------

Did you look at {{RexImplicationCheckerTest.Fixture}}? It isolates the 
necessary methods and fields in a separate class from the test, it declares 
fields final where possible, but can live on the stack so its life-cycle is 
straightforward (better than {{@Before}}, in my opinion). Also, tests can 
sub-class Fixture to add more things that they need.

> RexProgramTest: move "rex building" methods to base class
> ---------------------------------------------------------
>
>                 Key: CALCITE-2462
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2462
>             Project: Calcite
>          Issue Type: Sub-task
>          Components: core
>    Affects Versions: 1.17.0
>            Reporter: Vladimir Sitnikov
>            Assignee: Julian Hyde
>            Priority: Major
>             Fix For: 1.18.0
>
>
> RexProgramTest is quite big (2000 lines now), and "easy to use" rex building 
> is useful for many tests.
> So I suggest to move methods like {{gt}}, {{lt}}, etc to the base class, so 
> multiple other tests can reuse it.
> Alternative option would be to use Kotlin for builders, yet I think Java 
> tests will be there for quite a while, so it would be nice to simplify them 
> as well.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to