summaryrefslogtreecommitdiff
path: root/debian/tests/testsuite-dbg
diff options
context:
space:
mode:
Diffstat (limited to 'debian/tests/testsuite-dbg')
-rw-r--r--debian/tests/testsuite-dbg82
1 files changed, 82 insertions, 0 deletions
diff --git a/debian/tests/testsuite-dbg b/debian/tests/testsuite-dbg
new file mode 100644
index 0000000..eed623d
--- /dev/null
+++ b/debian/tests/testsuite-dbg
@@ -0,0 +1,82 @@
+#!/bin/sh
+
+set -e
+
+if [ "$(whoami)" = root ]; then
+ if [ -n "$SUDO_USER" ] && getent passwd "$SUDO_USER" > /dev/null; then
+ su_user="$SUDO_USER"
+ else
+ su_user=nobody
+ fi
+
+ if [ -e /etc/default/apport ]; then
+ # stop apport
+ service apport stop 2>/dev/null || true
+ sed -i '/^enabled=/s/=.*/=0/' /etc/default/apport 2>/dev/null
+ fi
+fi
+
+tmphome=$ADTTMP/home
+mkdir -p $tmphome/.local/lib/python3.5/site-packages
+if [ -n "$su_user" ]; then
+ chmod -R go+rx $ADTTMP
+ chown -R $su_user:nogroup $tmphome
+fi
+ls -la $ADTTMP
+
+# no root access needed after this point
+
+debian_dir=$(dirname $(dirname $0))
+
+export LOCPATH=$(pwd)/locales
+sh $debian_dir/locale-gen
+
+export LANG=C
+
+TESTPYTHON="python3.5dm -W default -bb -E -R -m test"
+TESTOPTS="-j 1 -w -uall,-network,-urlfetch,-gui"
+TESTEXCLUSIONS="-x"
+
+# test_code_module: http://bugs.python.org/issue25109
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_code_module"
+
+# test_dbm: Fails from time to time ...
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_dbm"
+
+# test_ensurepip: not yet installed, http://bugs.debian.org/732703
+# ... and then test_venv fails too
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_ensurepip test_venv "
+
+# test_site: Investigate why this fails ... our package has one sitedir less
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_site"
+
+# test_zipfile: Issue 17753, requires write access to test and email.test
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_zipfile"
+
+TESTEXCLUSIONS="$TESTEXCLUSIONS test_socket"
+
+if [ "$su_user" = nobody ]; then
+ log=/dev/null
+else
+ log=testsuite-dbg.log
+fi
+
+# several tests fail with configured proxy; we don't need internet access, so
+# unset proxy variables
+EXTRAENV="env -u https_proxy -u http_proxy -u no_proxy HOME=$tmphome"
+
+script=$debian_dir/script.py
+if [ -f "$script" ]; then
+ cmd="$EXTRAENV python3.5 $script \"$log\" \"$TESTPYTHON $TESTOPTS $TESTEXCLUSIONS\""
+else
+ cmd="$EXTRAENV $TESTPYTHON $TESTOPTS $TESTEXCLUSIONS"
+fi
+
+echo "Running the python testsuite with the debug enabled interpreter:"
+if [ "$(whoami)" = root ]; then
+ echo "su -s /bin/sh -c $cmd $su_user"
+ su -s /bin/sh -c "$cmd" $su_user
+else
+ echo "$cmd"
+ eval $cmd
+fi