jhu-bids / TermHub

Web app and CLI tools for working with biomedical terminologies. https://github.com/orgs/jhu-bids/projects/9/views/7
https://bit.ly/termhub
GNU General Public License v3.0
8 stars 10 forks source link

Tests: Backend: Split long-running tests #809

Open joeflack4 opened 2 weeks ago

joeflack4 commented 2 weeks ago

Overview

Some backend tests take a while to run, like 5-10 minutes plus; basically as long as the rest of the suite without these outliers combined. It would be nice to run them separately so that we can see quickly if our tests are passing.

Proposed solution

Split into two GitHub actions:

  1. Normal test suite: runs on PR/push to main and develop
  2. Long-running tests: runs on PR to main, push main, push develop. Not: PR to develop
  3. Optional: If some take really long to run and aren't as important, or depend more on rare data situations, we can set these on sched, like 1x day/week.

Implementation

a. (Simple, first): Update test commands: Tell the command which tests to run b. 2 separate suites: You can declare a class for test suites, and reference them via the CLI. ChatGPT discussion

Badges

Need to create badges for all tests to display at the top of the homepage README.md like we're currently doing.

Which tests are long running

  1. Defunct: test_counts_compare_schemas() - don't need this one anymore, given how we're doing backups.
  2. The long running test where we upload csets and re-download them. TBD