Skip to content

Conversation

@krowvin
Copy link
Collaborator

@krowvin krowvin commented Dec 10, 2025

This sets up the framework to run recursive tests for the help pages of the CLI commands.

There are a few decisions we can make on how we handle these tests. Tossing some decisions to see if you agree @Enovotny?

  1. We should not test actual data that CWMS-Python calls, save this for the integration tests cwms-python does
  2. Always test every help page to ensure minimum operation
  3. If we go with option 1, do we want to mock the input and outputs that are expected for each command?
  • Write expected data to the repo
  • Run command i.e. cwms-cli blob download
  • See if it returns it in the expected format (i.e. stdout string check)?
    This would ensure no changes of the outputs expected and break downstream processes.
  1. Should tests only be ran on a PR merge to main, and only for source changed in that directory.
    For example, only run the usgs tests if changes to the usgs dir/src are in the PR. etc.

Note i'm targeting a dev python version to run the tests of 3.10, but the library itself (cwms-cli) is targeting 3.9

Wil

@krowvin krowvin requested a review from Enovotny December 10, 2025 16:20
@krowvin krowvin linked an issue Dec 10, 2025 that may be closed by this pull request
@krowvin
Copy link
Collaborator Author

krowvin commented Dec 10, 2025

Pytest is 3.10+

Could do a basic run of python 3.9 and the cli in the action itself? Thinking on how to handle it so we don't miss 3.9 errors for the T7

Setup a smoke test for python 3.9 below

@krowvin krowvin requested a review from MikeNeilson December 10, 2025 17:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Setup Initial Tests

2 participants