Update position independent code settings #964
Workflow file for this run
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: Run Unit Tests | |
on: | |
workflow_dispatch: | |
push: | |
paths: | |
- '**CMakeLists.txt' | |
- src/**.h | |
- src/**.cpp | |
- src/**.java | |
- src/**.dd | |
- src/**.inc | |
- src/**.lex | |
- src/**.yac | |
- test/**.h | |
- test/**.cpp | |
jobs: | |
run-unit-tests: | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
build-setup: | |
- {os: windows-2022, cmake-preset: windows-msvc-debug} | |
- {os: ubuntu-latest, cmake-preset: linux-gcc-debug} | |
- {os: macos-latest, cmake-preset: macos-clang-debug} | |
runs-on: ${{ matrix.build-setup.os }} | |
permissions: | |
id-token: write | |
contents: read | |
checks: write | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v3 | |
- name: Build Khiops test executables | |
uses: ./.github/actions/build-khiops | |
with: | |
preset-name: ${{ matrix.build-setup.cmake-preset }} | |
targets: norm_test parallel_test parallel_mpi_test learning_test KNITest | |
override-flags: -DBUILD_JARS=OFF | |
- name: Run Unit Tests for the Norm Module | |
run: | | |
build/${{ matrix.build-setup.cmake-preset }}/bin/norm_test \ | |
--gtest_output="xml:reports/report-norm.xml" | |
- name: Run Unit Tests for the Parallel Module | |
if: success() || failure() | |
run: | | |
build/${{ matrix.build-setup.cmake-preset }}/bin/parallel_test \ | |
--gtest_output="xml:reports/report-parallel.xml" | |
- name: Run Unit Tests for the Parallel MPI Module in serial | |
if: success() || failure() | |
run: | | |
build/${{ matrix.build-setup.cmake-preset }}/bin/parallel_mpi_test \ | |
--gtest_output="xml:reports/report-parallel-mpi-serial.xml" | |
- name: Run Unit Tests for the Parallel MPI Module in parallel | |
if: success() || failure() | |
run: | | |
mpiexec -n 4 build/${{ matrix.build-setup.cmake-preset }}/bin/parallel_mpi_test \ | |
--gtest_output="xml:reports/report-parallel-mpi-parallel.xml" | |
- name: Run Unit Tests for the Learning Module | |
if: success() || failure() | |
run: | | |
build/${{ matrix.build-setup.cmake-preset }}/bin/learning_test \ | |
--gtest_output="xml:reports/report-learning.xml" | |
- name: Run Unit Tests for the KNI Module | |
if: success() || failure() | |
run: | | |
build/${{ matrix.build-setup.cmake-preset }}/bin/KNITest \ | |
--gtest_output="xml:reports/report-kni.xml" | |
- name: Create Unit Test Reports Dashboards | |
uses: phoenix-actions/test-reporting@v12 | |
if: success() || failure() | |
with: | |
name: Unit Tests Reports (${{ matrix.build-setup.os }}) | |
reporter: jest-junit | |
path: reports/report-*.xml | |
path-replace-backslashes: 'true' # Necessary for windows paths |