-
-
Notifications
You must be signed in to change notification settings - Fork 393
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor runtests.jl to use a single run_tests function #3168
Conversation
Codecov ReportBase: 97.70% // Head: 97.70% // No change to project coverage 👍
Additional details and impacted files@@ Coverage Diff @@
## master #3168 +/- ##
=======================================
Coverage 97.70% 97.70%
=======================================
Files 33 33
Lines 4485 4485
=======================================
Hits 4382 4382
Misses 103 103 Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
ef49bb1
to
257fad6
Compare
Okay. I like where this is at. We have a decision on where the Pukeko.jl is a registered package that I was shamelessly inspired by. Using the |
This PR continues the refactoring I have been doing of JuMP's tests. * Tests are now contained in a module which lives in test/test_xxx.jl file * Within a module, tests are functions beginning with test_ * JuMPExtensions are tested by functions with the prefix test_extension_ and take two optional positional argumennts for the model type and variable type * Test individual files via the command line \`julia runtests.jl [\<file\> [\<file\> ...]]\` This design is flexible, and separates the runninng of the tests from their definition. This should let us swap in other drivers instead of the one currently in runtests.jl. For example, we might want to experiment with: * Running all test functions within a module in parallel * Running each test file in parallel * Providing a more flexible command line interface If we get something nice, we could package it into Pukeko.jl for wider use in the Julia ecosystem.
We can leave it in JuMP to play around it for a bit but I think it would be nice as an external package since we are using this pattern in many packages now |
This PR continues the refactoring I have been doing of JuMP's tests.
This design is flexible, and separates the runninng of the tests from their definition. This should let us swap in other drivers instead of the one currently in runtests.jl.
For example, we might want to experiment with:
If we get something nice, we could package it into Pukeko.jl for wider use in the Julia ecosystem.
Relatedly, this closes #1711, because it should enable external packages to run: