aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.yml4
-rw-r--r--tests/atlocal.in6
-rw-r--r--tests/testsuite.at3
3 files changed, 10 insertions, 3 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d42585a..c8a81ed 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -28,7 +28,7 @@ jobs:
build-essential
autoconf automake libtool
libglib2.0-dev libncurses-dev libgtk-3-dev xvfb
- groff doxygen
+ groff doxygen valgrind
- name: Configure Build
run: |
@@ -45,7 +45,7 @@ jobs:
# NOTE: The test suite must be run in verbose mode because if it fails
# we won't be able to analyze testsuite.log.
- name: Run Test Suite
- run: xvfb-run -a make check TESTSUITEFLAGS="--verbose"
+ run: xvfb-run -a make check TESTSUITEFLAGS="--verbose --valgrind"
- name: Build Developer Documentation
run: cd doc && make devdoc
- name: make distcheck
diff --git a/tests/atlocal.in b/tests/atlocal.in
index 4bc0a21..3c533a6 100644
--- a/tests/atlocal.in
+++ b/tests/atlocal.in
@@ -6,8 +6,12 @@ host=@host@
# anyway as we don't want to test some preinstalled SciTECO.
SCITECO="@abs_top_builddir@/src/sciteco"
+if [ $at_arg_valgrind != false ]; then
+ SCITECO="valgrind --tool=memcheck --error-exitcode=66 $SCITECO"
+fi
+
# For testing command-line editing:
-SCITECO_CMDLINE="@abs_top_builddir@/src/sciteco --no-profile --fake-cmdline"
+SCITECO_CMDLINE="$SCITECO --no-profile --fake-cmdline"
# Make sure that the standard library from the source package
# is used.
diff --git a/tests/testsuite.at b/tests/testsuite.at
index 01ca664..edf2d3f 100644
--- a/tests/testsuite.at
+++ b/tests/testsuite.at
@@ -1,6 +1,9 @@
AT_INIT
AT_COLOR_TESTS
+AT_ARG_OPTION([valgrind],
+ AS_HELP_STRING([--valgrind], [Run tests under Valgrind (memcheck)]))
+
# NOTE: There is currently no way to influence the return
# code of SciTECO, except to provoke an error.
# Since errors cannot be yielded explicitly, we use the