diff options
author | Vincent Petry <pvince81@owncloud.com> | 2013-12-19 16:47:17 +0100 |
---|---|---|
committer | Vincent Petry <pvince81@owncloud.com> | 2013-12-19 16:47:17 +0100 |
commit | 51e1bd5d040b37056c0baf028497a20fa74d84b2 (patch) | |
tree | dff21bc2614070d469d7488e28fae62df34e7345 /autotest.sh | |
parent | 079f1a6f4146ee181995084e7c4c43a6bbe0082c (diff) | |
download | nextcloud-server-51e1bd5d040b37056c0baf028497a20fa74d84b2.tar.gz nextcloud-server-51e1bd5d040b37056c0baf028497a20fa74d84b2.zip |
Enforce required phpunit version
This will prevent frustration and confusion when unit tests fail because
the wrong phpunit version was used
Diffstat (limited to 'autotest.sh')
-rwxr-xr-x | autotest.sh | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/autotest.sh b/autotest.sh index 3562b0feb04..94fc692a94d 100755 --- a/autotest.sh +++ b/autotest.sh @@ -13,6 +13,7 @@ ADMINLOGIN=admin$EXECUTOR_NUMBER BASEDIR=$PWD DBCONFIGS="sqlite mysql pgsql oci" +PHPUNIT=$(which phpunit) function print_syntax { echo -e "Syntax: ./autotest.sh [dbconfigname] [testfile]\n" >&2 @@ -23,6 +24,20 @@ function print_syntax { echo -e "\nIf no arguments are specified, all tests will be run with all database configs" >&2 } +if ! [ -x $PHPUNIT ]; then + echo "phpunit executable not found, please install phpunit version >= 3.7" >&2 + exit 3 +fi + +PHPUNIT_VERSION=$($PHPUNIT --version | cut -d" " -f2) +PHPUNIT_MAJOR_VERSION=$(echo $PHPUNIT_VERSION | cut -d"." -f1) +PHPUNIT_MINOR_VERSION=$(echo $PHPUNIT_VERSION | cut -d"." -f2) + +if ! [ $PHPUNIT_MAJOR_VERSION -gt 3 -o \( $PHPUNIT_MAJOR_VERSION -eq 3 -a $PHPUNIT_MINOR_VERSION -ge 7 \) ]; then + echo "phpunit version >= 3.7 required. Version found: $PHPUNIT_VERSION" >&2 + exit 4 +fi + if ! [ -w config -a -w config/config.php ]; then echo "Please enable write permissions on config and config/config.php" >&2 exit 1 @@ -179,10 +194,10 @@ EOF mkdir coverage-html-$1 php -f enable_all.php if [ -z "$NOCOVERAGE" ]; then - phpunit --configuration phpunit-autotest.xml --log-junit autotest-results-$1.xml --coverage-clover autotest-clover-$1.xml --coverage-html coverage-html-$1 $2 $3 + $PHPUNIT --configuration phpunit-autotest.xml --log-junit autotest-results-$1.xml --coverage-clover autotest-clover-$1.xml --coverage-html coverage-html-$1 $2 $3 else echo "No coverage" - phpunit --configuration phpunit-autotest.xml --log-junit autotest-results-$1.xml $2 $3 + $PHPUNIT --configuration phpunit-autotest.xml --log-junit autotest-results-$1.xml $2 $3 fi } |