diff options
author | Robin McCorkell <rmccorkell@owncloud.com> | 2015-08-31 14:22:02 +0100 |
---|---|---|
committer | Robin McCorkell <rmccorkell@owncloud.com> | 2015-08-31 14:22:02 +0100 |
commit | f6b1d3506f63518da7f5df250ef95f925adfb933 (patch) | |
tree | cc4b9b189c2711c17ad1ea3f07fdd562a2c3fba3 /autotest.sh | |
parent | 65784227d6460a9464b287cc698d3e0a54f6d0d3 (diff) | |
download | nextcloud-server-f6b1d3506f63518da7f5df250ef95f925adfb933.tar.gz nextcloud-server-f6b1d3506f63518da7f5df250ef95f925adfb933.zip |
Allow easy XDEBUG debugging with autotest
Debugging scripts needs the environment variable XDEBUG_CONFIG to be
set, which initiates a connection to a listening debugger. But if that
env is set and one of the PHP setup steps occurs (e.g. occ install), the
debugging session is 'completed' and the debugger no longer listens
during the actual tests. This saves the XDEBUG_CONFIG env so it only
applies during the PHPUnit execution, so only the real tests trigger the
debugging.
Diffstat (limited to 'autotest.sh')
-rwxr-xr-x | autotest.sh | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/autotest.sh b/autotest.sh index 0e112bfda32..6a09fbfabac 100755 --- a/autotest.sh +++ b/autotest.sh @@ -32,6 +32,9 @@ fi PHP=$(which "$PHP_EXE") PHPUNIT=$(which phpunit) +_XDEBUG_CONFIG=$XDEBUG_CONFIG +unset XDEBUG_CONFIG + function print_syntax { echo -e "Syntax: ./autotest.sh [dbconfigname] [testfile]\n" >&2 echo -e "\t\"dbconfigname\" can be one of: $DBCONFIGS" >&2 @@ -217,6 +220,9 @@ function execute_tests { rm -rf "coverage-html-$DB" mkdir "coverage-html-$DB" "$PHP" -f enable_all.php | grep -i -C9999 error && echo "Error during setup" && exit 101 + if [[ "$_XDEBUG_CONFIG" ]]; then + export XDEBUG_CONFIG=$_XDEBUG_CONFIG + fi if [ -z "$NOCOVERAGE" ]; then "${PHPUNIT[@]}" --configuration phpunit-autotest.xml --log-junit "autotest-results-$DB.xml" --coverage-clover "autotest-clover-$DB.xml" --coverage-html "coverage-html-$DB" "$2" "$3" RESULT=$? |