summaryrefslogtreecommitdiffstats
path: root/debian/tests/smoketest
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:52:12 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:52:12 +0000
commit974c21ad33bfa1d93d5ae795556d35ca7eb36e68 (patch)
tree1a0d7c0258aadfcd993c4bffa454bcf117b382cf /debian/tests/smoketest
parentAdding upstream version 1:7.0.4. (diff)
downloadlibreoffice-974c21ad33bfa1d93d5ae795556d35ca7eb36e68.tar.xz
libreoffice-974c21ad33bfa1d93d5ae795556d35ca7eb36e68.zip
Adding debian version 1:7.0.4-4+deb11u8.debian/1%7.0.4-4+deb11u8
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/tests/smoketest')
-rwxr-xr-xdebian/tests/smoketest87
1 files changed, 87 insertions, 0 deletions
diff --git a/debian/tests/smoketest b/debian/tests/smoketest
new file mode 100755
index 000000000..d52f8fa09
--- /dev/null
+++ b/debian/tests/smoketest
@@ -0,0 +1,87 @@
+#!/bin/bash
+# autopkgtest check: Run smoketest against an installed version of LibreOffice
+# (c) 2018 Software in the Public Interest, Inc.
+# Authors: Rene Engelhard <rene@debian.org>
+
+set -e
+set -E
+
+SRCDIR=`pwd`
+CHECK_PARALLELISM=1
+if [ -n "$AUTOPKGTEST_TMP" ]; then
+ TMP=`mktemp -q -p $AUTOPKGTEST_TMP`
+ WORKDIR=`mktemp -q -d -p $AUTOPKGTEST_TMP`
+else
+ TMP=`mktemp -q`
+ WORKDIR=`mktemp -q -d`
+fi
+
+function unapply() {
+ cd $SRCDIR
+ echo
+ echo "====== Unapplying the patches ======"
+ patch -p1 -R < ./debian/tests/patches/smoketest-standalone.diff
+ patch -p0 -R < ./debian/tests/patches/smoketest-disable-extension-tests.diff
+}
+
+trap "unapply" ERR
+
+echo
+echo "====== Patching the tree to only build the smoketest unittest against an existing installation ======"
+patch -p1 < ./debian/tests/patches/smoketest-standalone.diff
+patch -p0 < ./debian/tests/patches/smoketest-disable-extension-tests.diff
+
+echo
+echo "====== Enabling core dumps ======"
+# yes, we want core dumps and stack traces
+ulimit -c unlimited
+
+# FIXME: GROSS HACK.
+echo
+echo "====== Building needed parts of LibreOffice ======"
+./debian/rules config_host.mk ENABLE_PDFIUM=n ENABLE_MERGELIBS=n BUILD_GTK=n BUILD_GTK3=n BUILD_KDE=n
+cat << EOF >> $TMP
+export gb_SUPPRESS_TESTS=true
+make test.all verbose=t
+make bridges.all verbose=t
+make javaunohelper.all verbose=t
+make unoil.all verbose=t
+make unotest.all verbose=t
+make ure.all verbose=t
+make i18npool.all verbose=t
+EOF
+chmod 755 $TMP
+#TIMEOUT OPTIONS
+# --timeout-which=seconds
+# Use a different timeout for operations on or with the testbed.
+# There are five timeouts affected by five values of which: short:
+# supposedly short operations like setting up the testbed's apt
+# and checking the state (default: 100s); install: installation of
+# packages including dependencies (default: 3,000s); test: test
+# runs (default: 10,000s); copy: copy files/directories between
+# host and testbed (default: 300s); and build: builds (default:
+# 100,000s). The value must be specified as an integer number of
+# seconds.
+# 10000s = 160 min. so we have enough time to actually run the test :)
+timeout 150m $TMP || \
+ if test "$?" = "124"; then rm -f $TMP; exit 77; \
+ else exit $?; fi
+
+rm -f $TMP
+
+OOO_TEST_SOFFICE="${1:-path:/usr/lib/libreoffice/program/soffice}"
+
+echo
+echo "====== Starting smoketest with ${CHECK_PARALLELISM} job against ${OOO_TEST_SOFFICE} ======"
+
+export PARALLELISM=$CHECK_PARALLELISM
+
+export LD_LIBRARY_PATH=/usr/lib/libreoffice/program:$LD_LIBRARY_PATH
+cd smoketest && make -rk \
+ OOO_TEST_SOFFICE=${OOO_TEST_SOFFICE} \
+ CppunitTest_smoketest INSTDIR=/usr/lib/libreoffice verbose=t
+
+cd $SRCDIR
+
+unapply
+