[gjs] tests: Run under Xvfb



commit b534eabec9fb17b4f1ea8613bec157a9cf78019c
Author: Iain Lane <iain orangesquash org uk>
Date:   Wed Jun 10 09:18:21 2015 +0100

    tests: Run under Xvfb
    
    To isolate from the user's X session, and also so that we work properly
    in chroots or other minimal environments.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=750688

 Makefile-test.am |   17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)
---
diff --git a/Makefile-test.am b/Makefile-test.am
index ad5444e..4f9d7d4 100644
--- a/Makefile-test.am
+++ b/Makefile-test.am
@@ -2,8 +2,23 @@ EXTRA_DIST += \
        test/run-with-dbus \
        test/test-bus.conf
 
+XVFB = Xvfb -ac -noreset -screen 0 1024x768x16
+XIDS = 101 102 103 104 105 106 107 197 199 211 223 227 293 307 308 309 310 311 \
+   491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 \
+   991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 \
+  1008 1009 4703 4721 4723 4729 4733 4751 9973 9974 9975 9976 9977 9978 9979 \
+  9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 \
+  9995 9996 9997 9998 9999
+XVFB_START = \
+${XVFB} -help 2>/dev/null 1>&2 \
+    && XID=`for id in $(XIDS) ; do test -e /tmp/.X$$id-lock || { echo $$id; exit 0; }; done; exit 1` \
+    && { ${XVFB} :$$XID -nolisten tcp -auth /dev/null >/dev/null 2>&1 & \
+           trap "kill -15 $$! " 0 HUP INT QUIT TRAP USR1 PIPE TERM ; } \
+    || { echo "Gtk+Tests:ERROR: Failed to start Xvfb environment for X11 target tests."; exit 1; } \
+    && DISPLAY=:$$XID && export DISPLAY
+
 RUN_WITH_DBUS = ${top_srcdir}/test/run-with-dbus --session --system
-GTESTER = ${TESTS_ENVIRONMENT} ${RUN_WITH_DBUS} gtester
+GTESTER = ${XVFB_START} && ${TESTS_ENVIRONMENT} ${RUN_WITH_DBUS} gtester
 CLEANFILES += uninstalled-system-test-bus.conf uninstalled-test-bus.conf
 clean-local: test-user-data-clean
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]