Skip to content
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

Test suite cleanup #720

Open
mauzey1 opened this issue Jan 2, 2024 · 0 comments
Open

Test suite cleanup #720

mauzey1 opened this issue Jan 2, 2024 · 0 comments
Assignees
Milestone

Comments

@mauzey1
Copy link
Collaborator

mauzey1 commented Jan 2, 2024

The CMOR test suite suffers from a lot of clutter and would benefit from a cleanup/reorganization.

Here's a list of issues that I have noticed:

  • There are many files for tests that are either redundant or for very specific use cases.
  • Test files don't have a consistent naming convention, or have names that don't convey anything meaningful about the tests.
  • Test files that are in the Test directory but are not used in the Makefile.
  • There are many "helper" files for functions or tables scattered throughout Test directory along side the test files.

Goals for tests in the cleanup:

  • Create unit tests for each function listed in the CMOR API. Each function should be tested for how they support certain features such as forecast coordinates, append mode, etc.
  • Replicate each unit test for each supported language (C, Python, and Fortran) to make sure that they work consistently across different language. Have each language's set of tests be in their own directory.
  • Reduce the amount of utility functions and tables used for tests. Unit tests for the same function in different languages should all be able to use the same kind of data from JSON or netCDF files, which should be stored in their own directory. Unless there is code that can be used across different tests, utility functions should be restricted to the test files they are used in.
@mauzey1 mauzey1 self-assigned this Jan 2, 2024
@durack1 durack1 added this to the 4.0/Future milestone Apr 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants