Make the default failure handler public and update docs for custom fa… #1059
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: tests | |
on: | |
push: | |
pull_request: | |
# TODO: Check different standards? | |
# TODO: Re-enable testing in release | |
jobs: | |
test-linux: | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [g++-10, clang++-14] | |
target: [Debug] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: dependencies | |
run: | | |
sudo apt install gcc-10 g++-10 libgcc-10-dev | |
python3 -m pip install git+https://github.com/jeffkaufman/icdiff.git | |
- name: build | |
run: | | |
mkdir -p build | |
cd build | |
cmake .. \ | |
-DCMAKE_BUILD_TYPE=${{matrix.target}} \ | |
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} \ | |
-DLIBASSERT_BUILD_TESTING=On \ | |
-DLIBASSERT_WERROR_BUILD=On | |
make -j | |
- name: test | |
working-directory: build | |
run: | | |
CTEST_OUTPUT_ON_FAILURE=1 make test | |
test-linux-gcc-8: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [g++-8] | |
target: [Debug] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: dependencies | |
run: | | |
sudo apt install gcc-8 g++-8 libgcc-8-dev | |
python3 -m pip install git+https://github.com/jeffkaufman/icdiff.git | |
- name: build | |
run: | | |
mkdir -p build | |
cd build | |
cmake .. \ | |
-DCMAKE_BUILD_TYPE=${{matrix.target}} \ | |
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} \ | |
-DLIBASSERT_BUILD_TESTING=On \ | |
-DLIBASSERT_WERROR_BUILD=On | |
make -j | |
- name: test | |
working-directory: build | |
run: | | |
CTEST_OUTPUT_ON_FAILURE=1 make test | |
test-macos: | |
runs-on: macos-14 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [g++-12, clang++] | |
c_compiler: [gcc-12, clang] | |
target: [Debug] | |
exclude: # TODO: Ugly hack | |
- compiler: g++-12 | |
c_compiler: clang | |
- compiler: clang++ | |
c_compiler: gcc-12 | |
- compiler: clang++ # Disabled due to #15 TODO TODO TODO | |
target: Debug | |
steps: | |
- uses: actions/checkout@v2 | |
- name: dependencies | |
run: | | |
brew install icdiff | |
- name: build | |
run: | | |
mkdir -p build | |
cd build | |
cmake .. \ | |
-DCMAKE_BUILD_TYPE=${{matrix.target}} \ | |
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} \ | |
-DCMAKE_C_COMPILER=${{matrix.c_compiler}} \ | |
-DLIBASSERT_BUILD_TESTING=On \ | |
-DLIBASSERT_WERROR_BUILD=On | |
make -j | |
- name: test | |
working-directory: build | |
run: | | |
CTEST_OUTPUT_ON_FAILURE=1 make test | |
test-windows: | |
runs-on: windows-2022 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [cl] # turned off clang for now | |
target: [Debug] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Enable Developer Command Prompt | |
uses: ilammy/[email protected] | |
- name: dependencies | |
run: | | |
pip install icdiff | |
- name: build msvc | |
if: ${{ matrix.compiler == 'cl' }} | |
run: | | |
mkdir -p build | |
cd build | |
cmake .. ` | |
-DCMAKE_BUILD_TYPE=${{matrix.target}} ` | |
-DLIBASSERT_BUILD_TESTING=On ` | |
-DLIBASSERT_WERROR_BUILD=On | |
msbuild .\libassert.sln | |
# - name: build clang | |
# if: ${{ matrix.compiler == 'clang++' }} | |
# run: | | |
# mkdir -p build | |
# cd build | |
# cmake .. ` | |
# -DCMAKE_BUILD_TYPE=${{matrix.target}} ` | |
# -DCMAKE_CXX_COMPILER="C:\msys64\mingw64\bin\clang++" ` | |
# -DCMAKE_C_COMPILER="C:\msys64\mingw64\bin\clang" ` | |
# -DLIBASSERT_BUILD_TESTING=On \ | |
# -DLIBASSERT_WERROR_BUILD=On | |
# msbuild .\libassert.sln | |
- name: test | |
working-directory: build | |
run: | | |
ctest -C ${{matrix.target}} --output-on-failure | |
test-mingw: | |
runs-on: windows-2022 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [g++] | |
target: [Debug] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Enable Developer Command Prompt | |
uses: ilammy/[email protected] | |
- name: dependencies | |
run: | | |
pip install icdiff | |
- name: build | |
run: | | |
mkdir -p build | |
cd build | |
cmake .. ` | |
-DCMAKE_BUILD_TYPE=${{matrix.target}} ` | |
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} ` | |
-DLIBASSERT_BUILD_TESTING=On ` | |
-DLIBASSERT_USE_CI_WRAPPER=On ` | |
"-GUnix Makefiles" ` | |
-DLIBASSERT_WERROR_BUILD=On | |
make -j | |
- name: test | |
working-directory: build | |
run: | | |
$env:CTEST_OUTPUT_ON_FAILURE=1 | |
make test |