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

Organize unit tests by naming scheme #174

Open
wperkins opened this issue Oct 25, 2023 · 0 comments
Open

Organize unit tests by naming scheme #174

wperkins opened this issue Oct 25, 2023 · 0 comments
Assignees
Labels
enhancement testing Considering unit tests and CI

Comments

@wperkins
Copy link
Member

wperkins commented Oct 25, 2023

The number of GridPACK unit tests has grown quite large. Running all the tests takes quite a while. Some tests may or may not fail. CI may not need to run the entire suite, or just run part of the suite and ignore the results, or just provide more granularity in CI testing results.

I think we need a facility whereby only certain test subsets can be run easily and this might best be done by having a test naming convention. We already have the _serial and _parallel suffixes. Consider adding a prefix to each name like

  • base_ would identify tests of general GridPACK facilities, e.g.,
    • base_greetings_serial
    • base_hash_serial
  • math_ would identify math library tests, e.g.
    • math_real_vector_parallel,
    • math_complex_nonlinear_solver_parallel,
  • network_ to identify network, bus/branch component, and partitioning unit tests
  • app_ for application smoke tests, delineated by a short app indicator, e.g.
    • app_pf_ for power flow
    • app_dsfy_ for dynamic simulation (full y)
    • app_wind_ for wind DSA
  • and so on

This should be enforced by defining a set of allowable prefixes and requiring one of those be specified at test creation, e.g.,

gridpack_add_unit_test(GRIDPACK_MATH_TEST real_dae_solver real_dae_solver_test)
gridpack_add_run_test(GRIDPACK_APP_DSFY_TEST "145_bus" dsf.x input_145.xml)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement testing Considering unit tests and CI
Projects
None yet
Development

No branches or pull requests

2 participants