diff options
| author | Julian Andres Klode <jak@debian.org> | 2022-05-11 09:21:23 +0000 |
|---|---|---|
| committer | Julian Andres Klode <jak@debian.org> | 2022-05-11 09:21:23 +0000 |
| commit | bed5d00b5c6f70ae80d180ef162316e3bafb0ad0 (patch) | |
| tree | 85585f36ef08b56f0ed87bf6342a0c7c24d3a82d /debian/tests | |
| parent | 4fe52f98c7d12bc8fb07411b1c0594a032eadb3a (diff) | |
| parent | 018cf7c225837b65e2b146788f786685629a5b12 (diff) | |
Merge branch 'ci/nomorelessdocs' into 'main'
Support building with no/less docs and use it more in CI
See merge request apt-team/apt!238
Diffstat (limited to 'debian/tests')
| -rw-r--r-- | debian/tests/control | 13 | ||||
| -rw-r--r-- | debian/tests/pkg-config-test | 31 | ||||
| -rw-r--r-- | debian/tests/run-tests | 29 |
3 files changed, 47 insertions, 26 deletions
diff --git a/debian/tests/control b/debian/tests/control index 446f0afcc..e273b737f 100644 --- a/debian/tests/control +++ b/debian/tests/control @@ -1,10 +1,11 @@ -Tests: run-tests, pkg-config-test +Tests: pkg-config-test +Restrictions: superficial +Depends: libapt-pkg-dev, pkg-config + +Tests: run-tests Restrictions: allow-stderr Depends: @, @builddeps@, dpkg (>= 1.20.8), fakeroot, wget, stunnel4, lsof, db-util, - gnupg (>= 2) | gnupg2, - gnupg1 | gnupg (<< 2), - gpgv (>= 2) | gpgv2, - gpgv1 | gpgv (<< 2), + gnupg (>= 2) | gnupg2, gnupg1 | gnupg (<< 2), + gpgv (>= 2) | gpgv2, gpgv1 | gpgv (<< 2), libfile-fcntllock-perl, python3-apt, aptitude, - pkg-config, valgrind, gdb-minimal | gdb diff --git a/debian/tests/pkg-config-test b/debian/tests/pkg-config-test index 1e4ec141e..e074b1603 100644 --- a/debian/tests/pkg-config-test +++ b/debian/tests/pkg-config-test @@ -1,23 +1,32 @@ #!/bin/sh - set -e -WORKDIR=$(mktemp -d) -trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM -cd $WORKDIR -cat <<EOF > pkgconfigtest.c +if [ -z "$AUTOPKGTEST_TMP" ]; then + WORKDIR='' + cleanup() { + if [ -n "$WORKDIR" ]; then cd /; rm -rf -- "$WORKDIR"; fi + WORKDIR='' + } + trap 'cleanup' 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM + WORKDIR="$(mktemp -d)" + cd "$WORKDIR" +else + cd "$AUTOPKGTEST_TMP" +fi + +cat >pkgconfigtest.cc <<EOF #include <apt-pkg/init.h> -#include <stdio.h> +#include <cstdio> int main() { - printf("Apt Version: %s \n", pkgVersion); + printf("APT Version: %s\n", pkgVersion); return 0; } EOF -g++ -o pkgconfigtest pkgconfigtest.c `pkg-config --cflags --libs apt-pkg` -echo "build: OK" -[ -x pkgconfigtest ] +g++ -Wall -Wextra -o pkgconfigtest pkgconfigtest.cc `pkg-config --cflags --libs apt-pkg` +echo 'build: OK' +test -x pkgconfigtest ./pkgconfigtest -echo "run: OK" +echo 'run: OK' diff --git a/debian/tests/run-tests b/debian/tests/run-tests index ff3359fae..c7ca16b35 100644 --- a/debian/tests/run-tests +++ b/debian/tests/run-tests @@ -1,26 +1,37 @@ #!/bin/sh - set -e -if [ ! -e build/CMakeCache.txt ]; then - mkdir build || true - ( cd build && cmake .. ) +SOURCE_DIR="$(pwd)" +if [ -z "$AUTOPKGTEST_TMP" ]; then + BUILD_DIR='' + cleanup() { + if [ -n "$BUILD_DIR" ]; then cd /; rm -rf -- "$BUILD_DIR"; fi + BUILD_DIR='' + } + trap 'cleanup' 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM + BUILD_DIR="$(mktemp -d)" +else + BUILD_DIR="$AUTOPKGTEST_TMP" +fi + +if [ ! -e "${BUILD_DIR}/CMakeCache.txt" ]; then + cmake -S "$SOURCE_DIR" -B "$BUILD_DIR" -DUSE_SYSTEM_APTPKG=ON -DWITH_DOC=OFF -DUSE_NLS=OFF fi -make -C build/test/interactive-helper +make -C "${BUILD_DIR}/test/interactive-helper" # run tests against the installed apt, use "env -i" to ensure # the host env does not pollute our environment env -i \ -APT_INTEGRATION_TESTS_SOURCE_DIR=$(pwd) \ -APT_INTEGRATION_TESTS_HELPERS_BIN_DIR=$(pwd)/build/test/interactive-helper \ +APT_INTEGRATION_TESTS_SOURCE_DIR="${SOURCE_DIR}" \ +APT_INTEGRATION_TESTS_BUILD_DIR="${BUILD_DIR}" \ APT_INTEGRATION_TESTS_METHODS_DIR=/usr/lib/apt/methods \ APT_INTEGRATION_TESTS_LIBEXEC_DIR=/usr/lib/apt/ \ APT_INTEGRATION_TESTS_INTERNAL_SOLVER=/usr/lib/apt/solvers/apt \ APT_INTEGRATION_TESTS_DUMP_SOLVER=/usr/lib/apt/solvers/dump \ APT_INTEGRATION_TESTS_INTERNAL_PLANNER=/usr/lib/apt/planners/apt \ -APT_INTEGRATION_TESTS_BUILD_DIR=/usr/bin \ APT_INTEGRATION_TESTS_FTPARCHIVE_BIN_DIR=/usr/bin \ +APT_INTEGRATION_TESTS_CMDLINE_BIN_DIR=/usr/bin \ APT_INTEGRATION_TESTS_LIBRARY_PATH=/dev/null/does/not/exist \ APT_INTEGRATION_TESTS_ARTIFACTS_DIR="${AUTOPKGTEST_ARTIFACTS}" \ -./test/integration/run-tests -q +"${SOURCE_DIR}/test/integration/run-tests" -q |
