CALIPSO-project / SPINacc

A spinup acceleration procedure for land surface models (LSM) . Developer team Mandresy Rasolonjatovo, Tianzhang Cai, Matthew Archer, Daniel Goll
4 stars 0 forks source link

[WIP] Add automated tests #67

Open ma595 opened 2 months ago

ma595 commented 2 months ago

Automatic testing

The tests rely on a job being completed before execution as output data needs to be there for a comparison to happen. For automated testing (regression), this presents a problem. We have therefore shown how it may be possible to use github actions to run the job in advance and then execute a single test.

The automated job needs the following data to execute a test.

The zenodo data is approximately 1.1GB. We cannot run SPINacc from scratch because the data dependencies are just too large. This is explained more here

Testing is steered using a .github actions file. .github/workflows/python.yml, and assumes that the initialisation step has already been executed. Therefore auxil.npy and packdata.npy are already there.

It does the following:

Outstanding issues

In order to merge the following issues should be addressed:

ma595 commented 2 months ago

Copying over Tom's comment here:

https://github.com/CALIPSO-project/SPINacc/pull/45#issuecomment-2188959336

Discussed idea of generating idealized test case for integration test. Not necessarily physically meaningful but something that uses the code in a realistic manner.

@dsgoll123 will make a new small training set for new version ORCHIDEE