1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- name: tests
- on:
- push:
- branches: [ master ]
- pull_request:
- branches: [ master ]
- jobs:
- lint:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - run: ./scripts/clang-format-check
- autotools:
- strategy:
- matrix:
- os: ["ubuntu-latest", "macos-latest"]
- cc: ["gcc", "clang"]
- runs-on: ${{matrix.os}}
- steps:
- - if: ${{runner.os == 'macOS'}}
- run: brew install autoconf automake libtool
- - uses: actions/checkout@v2
- - run: autoreconf -fi
- - env:
- CC: ${{matrix.cc}}
- CFLAGS: -Werror
- run: ./configure
- - run: make check
- cmake:
- strategy:
- matrix:
- os: ["ubuntu-latest", "macos-latest", "windows-latest"]
- cc: ["gcc", "clang"]
- exclude:
- - os: windows-latest
- cc: gcc
- - os: windows-latest
- cc: clang
- include:
- - os: windows-latest
- cc: 'msvc' # Doesn't really matter, MSVC is always used on Windows
- runs-on: ${{matrix.os}}
- steps:
- - uses: actions/checkout@v2
- - env:
- CC: ${{matrix.cc}}
- run: cmake .
- - run: cmake --build .
- - run: ctest
- valgrind:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - run: sudo apt update && sudo apt install valgrind
- - run: cmake -DJANSSON_TEST_WITH_VALGRIND=ON .
- - run: cmake --build .
- - run: ctest
- coveralls:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - run: sudo apt update && sudo apt install curl lcov
- - run: cmake -DJANSSON_COVERAGE=ON -DCMAKE_BUILD_TYPE=Debug .
- - run: cmake --build .
- - run: cmake --build . --target coverage
- - name: Coveralls
- uses: coverallsapp/github-action@master
- with:
- github-token: ${{ secrets.GITHUB_TOKEN }}
- path-to-lcov: coverage.info
|