Browse Source
add convenience script to run all tests at once
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
pull/5122/head
Arthur Schiwon
9 years ago
No known key found for this signature in database
GPG Key ID: 7424F1874854DF23
1 changed files with
34 additions and
0 deletions
-
apps/user_ldap/tests/Integration/run-all.sh
|
|
|
@ -0,0 +1,34 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
trigger_notification() { |
|
|
|
which notify-send 1>/dev/null |
|
|
|
if [[ $? == 1 ]] ; then |
|
|
|
return |
|
|
|
fi |
|
|
|
export NOTIFY_USER=$SUDO_USER |
|
|
|
export RESULT_STR=$1 |
|
|
|
# does not work. just pipe result into a non-sudo cmd |
|
|
|
su "$NOTIFY_USER" -c "notify-send -u normal -t 43200000 -a Nextcloud -i Nextcloud \"LDAP Integration tests $RESULT_STR\"" |
|
|
|
} |
|
|
|
|
|
|
|
FILES_ROOT=($(ls -d -p Lib/* | grep -v "/$")) |
|
|
|
FILES_USER=($(ls -d -p Lib/User/* | grep -v "/$")) |
|
|
|
# TODO: Loop through dirs (and subdirs?) once there are more |
|
|
|
TESTFILES=("${FILES_ROOT[@]}" "${FILES_USER[@]}") |
|
|
|
|
|
|
|
TESTCMD="./run-test.sh" |
|
|
|
|
|
|
|
echo "Running " ${#TESTFILES[@]} " tests" |
|
|
|
for TESTFILE in "${TESTFILES[@]}" ; do |
|
|
|
echo -n "Test: $TESTFILE… " |
|
|
|
STATE=`$TESTCMD "$TESTFILE" | grep -c "Tests succeeded"` |
|
|
|
if [ "$STATE" -eq 0 ] ; then |
|
|
|
echo "failed!" |
|
|
|
trigger_notification "failed" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
echo "succeeded" |
|
|
|
done |
|
|
|
|
|
|
|
echo -e "\nAll tests succeeded" |
|
|
|
trigger_notification "succeeded" |