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

Julian Hyde commented on CALCITE-5923:
--------------------------------------

Thanks for this. This is a useful change.

The commit message (and jira description) are a little misleading. There aren't 
widespread violations of the design principle. The summary should talk about 
using junit lifecycle to simplify parameterized tests.

Are there other places in Calcite that would benefit from Lifecycle.PER_CLASS?

> Some test cases in `SqlOperatorTest` violates the test fixture's design 
> principle
> ---------------------------------------------------------------------------------
>
>                 Key: CALCITE-5923
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5923
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.35.0
>            Reporter: Runkang He
>            Assignee: Runkang He
>            Priority: Minor
>              Labels: pull-request-available
>
> There are some test cases in `SqlOperatorTest` directly use the 
> `SqlOperatorFixtureImpl.DEFAULT` to get the `SqlOperatorFixture`, including 
> `SqlOperatorTest.testCast` and many other test cases related with `CAST` 
> operator. This causes that the result check is missing when execute 
> `CalciteSqlOperatorTest`, which should has result check.
> This violates the design principle introduced by CALCITE-4885, which we 
> should alway use `SqlOperatorTest.fixture()` to get the `SqlOperatorFixture`. 
> This principle allows us to override`fixture()` method in subclasses to run 
> tests in a different environment.
> So I think we should fix these related test cases to keep consistent with the 
> principle.



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

Reply via email to