#!/bin/sh

set -eu

export HOME="$AUTOPKGTEST_TMP"
export TMPDIR="$AUTOPKGTEST_TMP"

xvfb-run bash -c '
set -eu

self_pid=$$

echo "Launching window manager"
matchbox-window-manager >/dev/null 2>&1 &
wm_pid=$!
echo "wm_pid=$wm_pid"

echo "Launching MediaConch gui"
mediaconch-gui &
mediaconch_gui_pid=$!
echo "mediaconch_gui_pid=$mediaconch_gui_pid"

trap '\''kill $wm_pid $mediaconch_gui_pid'\'' INT TERM EXIT

echo "Waiting for 2 seconds to ensure MediaConch has not crashed"
sleep 2

echo "Checking for MediaConch window presence..."
wmctrl -l | grep -q MediaConch && echo Found || exit 10

echo "Closing MediaConch window"
wmctrl -c MediaConch || exit 11

echo "Waiting for mediaconch-gui to exit..."
wait "$mediaconch_gui_pid"
echo Done

echo "Killing window manager"
kill -TERM "$wm_pid"
echo "Waiting for window manager to exit..."
wait "$wm_pid" || true

echo "Done"
trap - INT TERM EXIT
'
