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

Julian Hyde commented on CALCITE-2088:
--------------------------------------

Reviewing your PR:
* I agree with [~vlsi]'s comments about spaces vs tabs, and main vs test
* Did you consider making End2EndTest inherit from QuidemTest, as 
CoreQuidemTest does? In particular QuidemTest handles errors better - it 
generates a diff.
* Regarding your change to FilesTableFunction; rather than removing sparseness 
for all operating systems, could you provide a default value (e.g. 0) for macOS.
* Remove plus/.gitignore and add its lines to root .gitignore
* Per naming conventions, can you please rename HSQLBootstrap to 
HsqldbBootstrap 
* The Chinook database [uses the MIT 
license|http://www.codeplex.com/ChinookDatabase/license]. Please remove the 
header from database.sql but add some lines to the MIT section in our LICENSE 
file
* Describe somewhere what you mean by "end to end tests", and expand "e2e" in a 
couple of places.
* File name "prefered-for-specific-user.iq" is mis-spelled
* I get an error while running prefered-for-specific-user.iq; difficult to tell 
what the problem is

Did you know that several of our tests use the Foodmart database, embedded in a 
jar file, downloaded from maven central? See 
net.hydromatic:foodmart-data-hsqldb 
([github|https://github.com/julianhyde/foodmart-data-hsqldb] and [maven 
central|http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22foodmart-data-hsqldb%22]).
 How do you feel about doing the same for Chinook? It simplifies licensing, 
because we would no longer be distributing Chinook.



> More complex end2end tests in Calcite Plus module
> -------------------------------------------------
>
>                 Key: CALCITE-2088
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2088
>             Project: Calcite
>          Issue Type: Improvement
>    Affects Versions: 1.16.0
>            Reporter: Piotr Bojko
>            Assignee: Piotr Bojko
>
> As in following correspondence - we would like to have more tests with more 
> complexity. This should lead to lower regressions.
> {quote}
> Yes, please do.
>  On Dec 8, 2017, at 7:13 AM, [email protected] wrote:
>  
>  I've taken a look into quidem.
>  
>  I will log jira for that and assign it to myself, ok?
>  
>  On Tue, Dec 5, 2017, 22:26 Julian Hyde <[email protected]> wrote:
>  
>  More tests are always welcome.
>  
>  I would be wary of adding a new approach (assertj-db). Over time we end up
>  with as many approaches as there are contributors, and so the code becomes
>  hard to maintain. Consider using quidem (see QuidemTest and various .iq
>  files in the code base); it combines assertion-based testing with the
>  simplicity of script-based tests.
>  
>  This could be added to the “plus” module, where we don’t mind extra
>  dependencies, and don’t mind if the test suite takes a long time.
>  
>  Julian
>  
>  
>  On Dec 2, 2017, at 3:40 PM, [email protected] wrote:
>  
>  Hello fellow calcite dev team,
>  
>  I am building a database with use of calcite framework and decided that
>  instead of simple unit tests I will go only with integration tests. This
>  is
>  due the fact that my code only glues the calcite with data and configures
>  the whole thing decorating with web api and jdbc access (with avatica ;)
>  ).
>  
>  I have some problems with calcite, possible bugs - some of them in apache
>  jira for calcite logged already. Those problem are visible through my
>  tests.
>  
>  And with that in mind I have an idea for a new maven artifact for
>  calcite -
>  end to end tests for an example h2 database. Database could have some
>  tables with data - maybe 100k rows in all tables. Tests with assertj and
>  its derivatives, something like I've done in my project - see the
>  pastebin
>  https://pastebin.com/raw/mevih4k6 .
>  
>  Such test set can help with lowering regressions establishing a common
>  ground for talking about the calcite behaviour on specific cases (which
>  can
>  be described through end2end tests).
>  
>  The tech under such maven artifact can be pretty simple:
>  
>   - h2 as a data source, maybe some other
>   - one properly complicated json calcite schema
>   - some tech for populating h2 with data (just for having data with some
>   descriptive language, not a binary format)
>   - assertj-db for DSL in tests
>  
>  What do You think?
>  
>  Cheers,
>  Pete
> {quote}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to