#!/bin/bash
# autopkgtest check: process worksheet examples
set -ue
cd $AUTOPKGTEST_TMP

## see WIP
mkdir -p -m 700 $HOME/.config

if [ ! -v XDG_RUNTIME_DIR ]; then
	export XDG_RUNTIME_DIR=$AUTOPKGTEST_TMP/XDG_RUNTIME_DIR
	mkdir -p -m 700 XDG_RUNTIME_DIR
fi

cp -prd /usr/share/doc/wxmaxima/examples .
cd examples

mkdir -p BOOK

declare -A skiplist=(
[diffEquations]="asks questions"
[fittingEquations]="apparent maxima library issue"
)

set -o pipefail
shopt -s nullglob
for wxm in *.wxm *.wxmx ; do
	gnwxm=${wxm%.*}
	if [[ -v skiplist[$gnwxm] ]]; then
		echo "SKIP: $wxm (reason: ${skiplist[$gnwxm]})"
	else
		echo "===8><--- $wxm ---"
		cp -p -t BOOK $wxm
		xvfb-run -a wxmaxima --batch --exit-on-error --logtostderr BOOK/$wxm 2>&1 | tee $gnwxm.log
		echo "----------><8==="
	fi
	echo
done
set +o pipefail

grep -e 'Error:' -e 'Maxima error:' *.log && exit 2
grep -i -e 'error' *.log && exit 3

exit 0
