-
Notifications
You must be signed in to change notification settings - Fork 62
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
Create internal data with part 1 output to run tests #963
Comments
Another approach may be to combine unit tests more efficiently. We currently have 50 separate unit tests which is a lot.
this may save a lot of computing time as multiple tests can then utilise the initial part 1 output and help to condense the number of unit test files into clear groups of similar functionality. For example, we could have the following unit test files:
Well, maybe this is too ambitious, but we could try to consider that while also looking for ways to internally store part 1 data. |
@vincentvanhees I investigated one option to create part 1 milestone data to be used in the tests. The As this function takes data that were already stored in the package, it doesn't affect the size of the package. I tested this in test_lightPart5, and locally in my laptop the test takes ~35 seconds in the master branch version, and ~15 seconds using this new approach. |
I think that is a good idea as it does not require major changes to the existing tests. |
I have been working on this during the weekend and just commited the changes in this branch, here an update:
I am aware that soon there will be changes in part 1 from PR1027, so I will stop working on this until that PR is merged to avoid complications. |
As discussed today, we will explore:
|
Adapted from @vincentvanhees comment here
Running part 1 in multiple unit tests slows down package testing.
Proposal 1: Include the part 1 output in internal package data and then re-use that for every unit test that is not directly concerned with testing part 1 but depends on part 1 output. Storing the full part 1 output takes up too much space. In #956 I solved it by only storing metalong, object. What we could do is that we use that data to reconstruct M$metalong as I do in that branch and next we could simulate a matching metashort.
Proposal 2: Another approach may be to make sure that part 1 is run once when running the tests and that its data remains available for other unit tests. I do not know how to do this but it may be worth investigating.
The text was updated successfully, but these errors were encountered: