alamb commented on PR #6234:
URL: 
https://github.com/apache/arrow-datafusion/pull/6234#issuecomment-1542080696

   > Other than these this PR is LGTM!. 
   
   Thank you for the review @mustafasrepo  -- I will make the changes
   
   > However, I wonder whether we should keep an example test case each file. 
Because, tests in .rs files are quite useful during development. 
   
   Can you explain how SQL tests in .rs files are more useful during 
development than ones in .slt files? I suspect you are using a different 
workflow from me (which is totally good and understandable, but I therefore 
lack context).
   
    When I am working on some new feature, I found it quite easy to make some 
`new_feature.slt` file with just the SQL I want to run and then test with 
`cargo test --test sqllogictests -- new_feature`. This is often better for me 
than .rs tests because I can change the test and re-run it immediately without 
having to wait for it to recompile.
   
   > Novices can use these example test cases as starting point when they work 
on new functionality. I am not really sure, whether it will be helpful. What 
are you thoughts about it?
   
   My thoughts on this topic are:
   1. I agree that for people starting out with DataFusion development .rs 
tests are easier (because they are familiar to all Rust developers). 
sqllogictests are harder because they require learning another tool (though I 
think the barrier is pretty low)
   2. However,  for SQL based tests, sqllogictest based tests are *much* easier 
to maintain (specifically updating the tests with `cargo test --test 
sqllogictests -- --complete`). In my opinion this long term benefit is worth 
the short term cost
   
   The reason I am spending effort porting (and asking others to help) port the 
existing tests to sqllogictest is precisely to discourage new SQL tests written 
in rust (so the code is easier to maintain long term)
   
   🤔  if this makes sense to you, perhaps I can try to incorporate some of this 
rational into the documentation to make it clearer. 
   
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to