blob: d52f8fa09b109cb30cb60ec2c50c5bdf90260ae8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
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
|