aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ08nY2021-04-22 12:58:21 +0200
committerJ08nY2021-04-22 19:05:08 +0200
commitbb3572d95616a50ad17411627dbafdf879a6327a (patch)
tree247d0cfad06cf9ece862a038730a5052e4f6ef57
parent3e1aefd54ed04787d6ef8b8648b582e563554819 (diff)
downloadecgen-bb3572d95616a50ad17411627dbafdf879a6327a.tar.gz
ecgen-bb3572d95616a50ad17411627dbafdf879a6327a.tar.zst
ecgen-bb3572d95616a50ad17411627dbafdf879a6327a.zip
Add Test github workflow.
-rw-r--r--.github/workflows/test.yml44
1 files changed, 44 insertions, 0 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000..29e7823
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,44 @@
+name: Test
+
+on: [push, pull_request]
+
+jobs:
+ test:
+ runs-on: ubuntu-20.04
+ strategy:
+ matrix:
+ CC: [gcc, clang]
+ env:
+ CC: ${{ matrix.CC }}
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Setup ${{ matrix.CC }}
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y $CC dpkg apt
+ - name: Setup pari
+ run: |
+ wget -q https://mirrors.edge.kernel.org/ubuntu/pool/universe/p/pari/libpari-gmp-tls7_2.13.1-1_amd64.deb
+ wget -q https://mirrors.edge.kernel.org/ubuntu/pool/universe/p/pari/libpari-dev_2.13.1-1_amd64.deb
+ wget -q https://mirrors.edge.kernel.org/ubuntu/pool/universe/p/pari/pari-gp_2.13.1-1_amd64.deb
+ wget -q https://mirrors.edge.kernel.org/ubuntu/pool/main/r/readline/libreadline8_8.0-4_amd64.deb
+ wget -q https://mirrors.edge.kernel.org/ubuntu/pool/main/n/ncurses/libtinfo6_6.2-1_amd64.deb
+ wget -q https://pari.math.u-bordeaux.fr/pub/pari/packages/seadata.tgz
+ sudo dpkg --force-all -i libtinfo6_6.2-1_amd64.deb libreadline8_8.0-4_amd64.deb libpari-gmp-tls7_2.13.1-1_amd64.deb libpari-dev_2.13.1-1_amd64.deb pari-gp_2.13.1-1_amd64.deb
+ DATADIR=$(echo "default(datadir)" | gp -q | cut -d\" -f2)
+ sudo tar --strip-components=1 -C ${DATADIR} -xzf seadata.tgz data/
+ - name: Test
+ run: |
+ TEST=1 make unittest
+ - name: Code coverage
+ if: ${{ matrix.CC == 'gcc' }}
+ run: |
+ cd src && find . -name "*.gcda" -exec gcov -pb "{}" +;
+ - name: Code coverage upload
+ uses: codecov/codecov-action@v1
+ if: ${{ matrix.CC == 'gcc' }}
+ with:
+ env_vars: CC
+ functionalities: gcov