1- #! /bin/bash
1+ #! /usr/bin/env bash
2+
23set -e
34
45function setup {
@@ -13,9 +14,10 @@ function setup {
1314 docker pull solidtestsuite/web-access-control-tests:v7.1.0
1415 docker tag solidtestsuite/web-access-control-tests:v7.1.0 web-access-control-tests
1516}
17+
1618function teardown {
17- docker stop ` docker ps --filter network=testnet -q`
18- docker rm ` docker ps --filter network=testnet -qa`
19+ docker stop " $( docker ps --filter network=testnet -q) "
20+ docker rm " $( docker ps --filter network=testnet -qa) "
1921 docker network remove testnet
2022}
2123
@@ -24,21 +26,21 @@ function startPubSub {
2426}
2527
2628function startSolidNextcloud {
27- docker run -d --name $1 --network=testnet --env-file ./env-vars-$1 .list solid-nextcloud
28- until docker run --rm --network=testnet solidtestsuite/webid-provider-tests curl -kI https://$1 2> /dev/null > /dev/null
29+ docker run -d --name " $1 " --network=testnet --env-file " ./env-vars-$1 .list solid-nextcloud"
30+ until docker run --rm --network=testnet solidtestsuite/webid-provider-tests curl -kI " https://$1 " 2> /dev/null > /dev/null
2931 do
30- echo Waiting for $1 to start, this can take up to a minute ...
32+ echo Waiting for " $1 " to start, this can take up to a minute ...
3133 docker ps -a
32- docker logs $1
34+ docker logs " $1 "
3335 sleep 1
3436 done
3537
36- docker logs $1
37- echo Running init script for Nextcloud $1 ...
38- docker exec -u www-data -it -e SERVER_ROOT=https://$1 $1 sh /init.sh
39- docker exec -u root -it $1 service apache2 reload
40- echo Getting cookie for $1 ...
41- export COOKIE_$1 =" ` docker run --cap-add=SYS_ADMIN --network=testnet --env-file ./env-vars-$1 .list michielbdejong/nextcloud-cookie` "
38+ docker logs " $1 "
39+ echo " Running init script for Nextcloud $1 ..."
40+ docker exec -u www-data -it -e SERVER_ROOT=" https://$1 " " $1 " sh /init.sh
41+ docker exec -u root -it " $1 " service apache2 reload
42+ echo Getting cookie for " $1 " ...
43+ export COOKIE_$1 =" $( docker run --cap-add=SYS_ADMIN --network=testnet --env-file " ./env-vars-$1 .list" michielbdejong/nextcloud-cookie) "
4244}
4345
4446function runTests {
@@ -51,13 +53,26 @@ function runTests {
5153 --env-file ./env-vars-testers.list $1 -tests
5254}
5355
54- # ...
55- teardown || true
56- setup
57- startPubSub
58- startSolidNextcloud server
59- startSolidNextcloud thirdparty
60- runTests webid-provider
61- runTests web-access-control
62- runTests solid-crud
63- teardown
56+ run_solid_test_suite () {
57+ # ...
58+ teardown || true
59+ setup
60+ startPubSub
61+ startSolidNextcloud server
62+ startSolidNextcloud thirdparty
63+ runTests webid-provider
64+ runTests web-access-control
65+ runTests solid-crud
66+ teardown
67+ }
68+
69+ if [ " ${BASH_SOURCE[0]} " == " ${0} " ]; then
70+ run_solid_test_suite " ${@ } "
71+ else
72+ export -f run_solid_test_suite
73+ export -f runTests
74+ export -f setup
75+ export -f startPubSub
76+ export -f startSolidNextcloud
77+ export -f teardown
78+ fi
0 commit comments