[WIP] Python testing framework and workflow - #45
Conversation
|
Coming back to this PR I am now noticing a number of differences between the 'new' computed output and the reference output. On the Eliminating these from the output and comparing floating points, most values agree except 3 or 4 columns including |
|
Following up on this, I notice differences between reference I assume some steps are not deterministic, so should I ignore certain output columns? |
|
@gilbertozp is this blocked on the comment above from Matt? Or can this be merged? |
|
@gilbertozp is taking a look at this |
8e919f2 to
d6289b1
Compare
|
A few notes after revisiting this. @gilbertozp has the reference dataset been updated since we last looked at this?
Where 'discrepancies' refers to the number of mismatches between the reference and computed output. This does not seem to be stochastic (repeated runs give the same number of discrepancies). I use the reference 08, 07, and 02 as inputs. I can provide the jupyter notebook I used to do this analysis if that would help? |
4b2d6ae to
a98c3e4
Compare
Github no longer provides support for python2.7 from their action/setup-python action
a98c3e4 to
f659e65
Compare
The -a flag causes the build to break on HPC systems.
Add python testing framework and github actions workflow for automated testing. The PR downloads
US-ARc_sample*data and sets up the nighttime partitioning step. The test runs in a few seconds and the generated output (*.csv files) are compared for equality against reference output.The nighttime partitioning step was chosen as an integration test as it runs much faster than other steps in the ONEFlux pipeline (i.e. daytime partitioning). Python unit tests will be implemented in a later PR.
TODOs:
tests/test_context.pyto use pytest.pytest.partitioning_ntintegration testtests/python/integration/test_partitioning.pyUS-ARc_sample*and execute integration test..github/workflows/python-app.yamlFixes #46