diff options
Diffstat (limited to '.github/workflows/linux_unit_tests.yaml')
-rw-r--r-- | .github/workflows/linux_unit_tests.yaml | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/.github/workflows/linux_unit_tests.yaml b/.github/workflows/linux_unit_tests.yaml index c87ea6e07a..5aa7b4877b 100644 --- a/.github/workflows/linux_unit_tests.yaml +++ b/.github/workflows/linux_unit_tests.yaml @@ -138,3 +138,54 @@ jobs: - uses: codecov/codecov-action@v1 with: flags: unittests,linux,clingo + clingo-cffi: + # Test for the clingo based solver using the CFFI package + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - uses: actions/setup-python@v2 + with: + python-version: 3.8 + - name: Install System packages + run: | + sudo apt-get -y update + # Needed for unit tests + sudo apt-get install -y coreutils gfortran graphviz gnupg2 mercurial + sudo apt-get install -y ninja-build patchelf + # Needed for kcov + sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev + sudo apt-get -y install zlib1g-dev libdw-dev libiberty-dev + - name: Install Python packages + run: | + pip install --upgrade pip six setuptools codecov coverage cffi + pip install -i https://test.pypi.org/simple/ clingo-cffi + - name: Setup git configuration + run: | + # Need this for the git tests to succeed. + git --version + . .github/workflows/setup_git.sh + - name: Install kcov for bash script coverage + env: + KCOV_VERSION: 34 + run: | + KCOV_ROOT=$(mktemp -d) + wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz + tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz + mkdir -p ${KCOV_ROOT}/build + cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd - + make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install + - name: Run unit tests + run: | + whoami && echo PWD=$PWD && echo HOME=$HOME && echo SPACK_TEST_SOLVER=$SPACK_TEST_SOLVER + python -c "import clingo; print(hasattr(clingo.Symbol, '_rep'), clingo.__version__)" + . share/spack/setup-env.sh + spack compiler find + spack solve mpileaks%gcc + coverage run $(which spack) unit-test -v + coverage combine + coverage xml + - uses: codecov/codecov-action@v1 + with: + flags: unittests,linux,clingo |