ccpp-framework
ccpp-framework copied to clipboard
Create unit tests for comparing metadata headers against Fortran
capgen needs to compare a metadata header against the associated CCPP Fortran interface routine.
- Create unit tests that do the following:
- Read a metadata file (to collect the metadata headers)
- Read the associated CCPP Fortran scheme file (to collect Fortran interfaces)
- Compare the metadata header against the Fortran
- Tests should include
- Correctly identify when the metadata file matches the Fortran, even if the routines are not in the same order
- Correctly detect a missing metadata header
- Correctly detect a missing Fortran interface
- Correctly detect a mismatch between the metadata and the Fortran
This set of tests is testing the parse_scheme_files and parse_host_model_files functions in ccpp_capgen.py which perform the operations in the first bullet above. Each test should call one of these functions.