Refine the implementation #1099
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CMock Unit Tests | |
on: [push, pull_request] | |
jobs: | |
run: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Parent Repository | |
uses: actions/[email protected] | |
with: | |
ref: main | |
repository: FreeRTOS/FreeRTOS | |
submodules: 'recursive' | |
fetch-depth: 1 | |
# Checkout user pull request changes | |
- name: Checkout Pull Request | |
uses: actions/[email protected] | |
with: | |
path: ./FreeRTOS/Source | |
- name: Setup Python | |
uses: actions/setup-python@master | |
with: | |
python-version: 3.8 | |
- name: Install packages | |
run: | | |
sudo apt-get install lcov cflow ruby doxygen build-essential unifdef | |
- name: Run Unit Tests with ENABLE_SANITIZER=1 | |
run: | | |
make -C FreeRTOS/Test/CMock clean | |
make -C FreeRTOS/Test/CMock ENABLE_SANITIZER=1 run_col_formatted | |
- name: Run Unit Tests for coverage | |
run: | | |
make -C FreeRTOS/Test/CMock clean | |
make -C FreeRTOS/Test/CMock lcovhtml | |
lcov --config-file FreeRTOS/Test/CMock/lcovrc --summary FreeRTOS/Test/CMock/build/cmock_test.info > FreeRTOS/Test/CMock/build/cmock_test_summary.txt | |
- name: Upload coverage to Codecov | |
uses: codecov/[email protected] | |
with: | |
files: ${{ github.workspace }}/FreeRTOS/Test/CMock/build/cmock_test.info | |
root_dir: ${{ github.workspace }}/FreeRTOS/Source | |
flags: unittests | |
fail_ci_if_error: false | |
verbose: false | |
- name: Archive code coverage data | |
uses: actions/upload-artifact@v2 | |
with: | |
name: coverage-data | |
path: FreeRTOS/Test/CMock/build/cmock_test* | |
- name: Archive code coverage html report | |
uses: actions/upload-artifact@v2 | |
with: | |
name: coverage-report | |
path: FreeRTOS/Test/CMock/build/coverage |