Feature distance metrics #696
Workflow file for this run
This file contains hidden or 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: Code Coverage | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| permissions: | |
| contents: read | |
| jobs: | |
| codecov-coverage-reporter: | |
| runs-on: ubuntu-latest | |
| name: codecov-coverage-reporter | |
| steps: | |
| - name: Install coverage analysis tools | |
| run: sudo apt-get install lcov gcovr | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| submodules: true | |
| - name: Install dependencies | |
| working-directory: ${{github.workspace}}/tests | |
| run: | | |
| sudo apt install -y libboost-dev libtbb-dev | |
| python -m pip install --upgrade pip | |
| python -m pip install pytest scikit-learn pandas matplotlib coverage | |
| - name: Compile Python modules | |
| working-directory: ${{github.workspace}} | |
| run: | | |
| cmake -B build -DBUILD_PYTHON=ON -DCMAKE_BUILD_TYPE=Release && cmake --build build --parallel | |
| - name: Measure coverage of Python tests | |
| working-directory: ${{github.workspace}}/tests | |
| run: | | |
| coverage run -m pytest | |
| coverage xml -o python-coverage.xml | |
| - name: Measure coverage of C++ tests | |
| working-directory: ${{github.workspace}}/tests | |
| run: | | |
| cmake -B build -DCMAKE_BUILD_TYPE=Release -DCOVERAGE=ON && cmake --build build --parallel | |
| ctest --test-dir build --output-on-failure | |
| - name: Create coverage report | |
| working-directory: ${{github.workspace}}/tests/build | |
| run: | | |
| lcov --capture --directory .. --output-file coverage.info --ignore-errors mismatch | |
| lcov --remove coverage.info '/usr/*' '*/extern/*' --output-file cpp-coverage.info --ignore-errors unused mismatch | |
| - uses: codecov/[email protected] | |
| if: github.event.repository.full_name == 'cms-patatrack/CLUEstering' | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: | | |
| ${{github.workspace}}/tests/build/cpp-coverage.info | |
| python-coverage.xml | |
| flags: unittests | |
| name: codecov-umbrella | |
| fail_ci_if_error: true | |
| verbose: true | |
| slug: cms-patatrack/CLUEstering |