-
Notifications
You must be signed in to change notification settings - Fork 13
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
Code coverage with github action - final #22
Code coverage with github action - final #22
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor changes requested, otherwise great work so far!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes LGTM
@caleb-sitton-inl would you be able to raise an issue for a code coverage feature request? I realize there is no linked issue within this PR |
Pull Request Description
What issue does this change request address? (Use "#" before the issue to link it, i.e., #42.)
#23
What are the significant changes in functionality due to this change request?
The
run_tests
shell script has been updated with a new feature. It now accepts a command line argument specifying which tests the user would like to run (unit, integration, or both). It defaults to running all tests. This feature is particularly useful when the user wishes to check the code coverage provided by a single test type.A code coverage script named
check_py_coverage.sh
has been added. This script checks code coverage for all python files within theFORCE/src
directory whenrun_tests
is executed, and it returns the results in HTML format. It passes all command line arguments on torun_tests
, thus preserving the functionality of arguments supported byrun_tests
. It is based on a similar script of the same name in the github.com/idaholab/raven repository. A config file forcoverage.py
has also been added.The
run_tests.yml
script in the github action has been updated to run the above mentionedcheck_py_coverage.sh
instead of therun_tests
shell script. The coverage script serves as a wrapper aroundrun_tests
, so all tests are still run, albeit with some overhead time attributable to the coverage tracking. The coverage results are specifically exported to an artifact, where details regarding coverage can be found. A "notice" annotation has been added that alerts the user of the overall coverage of the tests in a more obvious manner than the artifact. The attached message also directs the user to the coverage artifact for more detailed coverage information.For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.