1*43854469SJaap de Haan#!/bin/bash 2*43854469SJaap de Haan# Run basic tests against the DokuWiki test environment 3*43854469SJaap de Haanset -e 4*43854469SJaap de Haan 5*43854469SJaap de HaanCONTAINER="dokuwiki-bpmnio-test" 6*43854469SJaap de HaanPORT=8080 7*43854469SJaap de HaanPLUGIN_DIR="/config/dokuwiki/lib/plugins/bpmnio" 8*43854469SJaap de Haan 9*43854469SJaap de Haanif ! docker ps --format '{{.Names}}' | grep -q "^${CONTAINER}$"; then 10*43854469SJaap de Haan echo "ERROR: Container $CONTAINER is not running. Run './start-test-env.sh' first." 11*43854469SJaap de Haan exit 1 12*43854469SJaap de Haanfi 13*43854469SJaap de Haan 14*43854469SJaap de Haanecho "Waiting for DokuWiki to respond..." 15*43854469SJaap de Haanfor i in {1..30}; do 16*43854469SJaap de Haan curl -sf "http://localhost:$PORT/" > /dev/null && break 17*43854469SJaap de Haan [ "$i" -eq 30 ] && { echo "ERROR: Timeout"; exit 1; } 18*43854469SJaap de Haan sleep 2 19*43854469SJaap de Haandone 20*43854469SJaap de Haan 21*43854469SJaap de Haanecho "Checking plugin files..." 22*43854469SJaap de Haanfor file in plugin.info.txt syntax/bpmnio.php script/bpmnio_render.js vendor/bpmn-js/package.json vendor/dmn-js/package.json; do 23*43854469SJaap de Haan docker exec "$CONTAINER" test -f "$PLUGIN_DIR/$file" || { echo "MISSING: $file"; exit 1; } 24*43854469SJaap de Haandone 25*43854469SJaap de Haanecho " All plugin files present" 26*43854469SJaap de Haan 27*43854469SJaap de Haanecho "Checking test pages..." 28*43854469SJaap de Haanfor page in test:bpmn-test test:dmn-test; do 29*43854469SJaap de Haan curl -sf "http://localhost:$PORT/doku.php?id=$page" | grep -q "bpmn\|dmn" \ 30*43854469SJaap de Haan && echo " $page OK" \ 31*43854469SJaap de Haan || echo " $page WARNING: may have issues" 32*43854469SJaap de Haandone 33*43854469SJaap de Haan 34*43854469SJaap de Haanecho "Tests passed." 35