Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/scripts/run-ui-tests
diff options
context:
space:
mode:
authorDaniel Narvaez <dwnarvaez@gmail.com>2012-11-07 13:25:39 (GMT)
committer Daniel Narvaez <dwnarvaez@gmail.com>2012-11-07 13:25:39 (GMT)
commit3eb071ea41d7f064fb92ce76c865d99d3cb55fdd (patch)
treea87b12a8c699d4133d1e53d823e31acf4937fb8a /scripts/run-ui-tests
parent53039c331fff9aa5a8680601c3b59eddd856dade (diff)
Rework tests to be based on pyatspi only
dogtail is not packaged for ubuntu at the moment and dogtail adds another layer which can make it difficult to debug intermittent failures. We might switch back at some point but for now I think it's easier to stay lower level and try to figure out how to improve reliability there.
Diffstat (limited to 'scripts/run-ui-tests')
-rwxr-xr-xscripts/run-ui-tests54
1 files changed, 54 insertions, 0 deletions
diff --git a/scripts/run-ui-tests b/scripts/run-ui-tests
new file mode 100755
index 0000000..ddf126a
--- /dev/null
+++ b/scripts/run-ui-tests
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+scriptsdir=`dirname "$0"`
+rootdir=`dirname "$scriptsdir"`
+testsdir=$rootdir/tests
+scriptsdir=$rootdir/scripts
+logsdir=$rootdir/logs
+display=`$scriptsdir/find-free-display`
+resolution=1024x768x16
+
+minver="0.8.0"
+version=`python -c "import dogtail; print dogtail.__version__"`
+if [ "$minver" != "`echo -e "$minver\n$version" | sort -V | head -n1`" ]; then
+ echo "Dogtail >= 0.8.0 is required."
+ exit 0
+fi
+
+xvfb=`which Xvfb`
+xserver="$xvfb $display -ac -noreset -shmem -screen 0 $resolution"
+
+if [ -z "$SUGAR_BUILDBOT" ]; then
+ xserver=$display
+fi
+
+export SUGAR_LOGGER_LEVEL=debug
+export GTK_MODULES=gail:atk-bridge
+export SUGAR_DOGTAIL=yes
+
+xinit $scriptsdir/xinitrc -- $xserver &
+xinitpid=$!
+
+sleep 20
+
+DISPLAY=$display python $testsdir/shell.py
+result=$?
+
+kill $xinitpid
+
+if [ -z "$SUGAR_BUILDBOT" ]; then
+ LOGFILE=$logsdir/test-`date +%Y%m%d-%H%M%S`.log
+else
+ LOGFILE=$logsdir/test.log
+fi
+
+cd ~/.sugar/dogtail/logs
+
+for logfile in *.log
+do
+ echo -e "===== $logfile =====\n" >> $LOGFILE
+ cat $logfile >> $LOGFILE
+ echo >> $LOGFILE
+done
+
+exit $result