summaryrefslogtreecommitdiffstats
path: root/test/run_test.sh
blob: a41de6a8ffa4ff50f930171cf93b64172217541f (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
#!/usr/bin/env bash

XPID=
FPID=
function create_fake_x ( )
{
    export DISPLAY=":$1"
    echo "Starting fake X: ${DISPLAY}"
    Xvfb +extension XINERAMA +xinerama -screen 0 1280x1024x24 -screen 1 800x600x24  ${DISPLAY} &>test-x-logs/xserver-:$1.log &
    XPID=$!
    sleep 1;
    timeout -k 30s 30s fluxbox &>test-x-logs/fluxbox-:$1.log &
    FPID=$!
    sleep 1
}

function destroy_fake_x ( )
{
    if [ -n "${XPID}" ]
    then
        echo "Stopping fake X: ${XPID} - ${FPID}"
        kill ${FPID}
        echo " wait flux"
        wait ${FPID}
        kill ${XPID}
        echo "wait x"
        wait ${XPID}
    fi
}

if [ -n "$3" ]
then
    export PATH=$3:$PATH
fi

create_fake_x "$1"
"$2" "$4"
RES=$?

destroy_fake_x

exit ${RES}