#!/usr/bin/env bash if [ "$1" == 'full' ]; then fulltest=1 elif [ "$1" == 'each' ]; then testeach=1 else fulltest=0 fi PHP_VERSION=$(php -r "echo PHP_VERSION_ID;") echo echo -e "\033[33mBegin Unit Testing\033[0m" # Run the testing suite echo "Basic test suite:" php vendor/bin/phpunit tests/unit if [ $? -ne 0 ]; then # Test failure exit 1 fi echo "With open_basedir enabled:" php -d open_basedir=`pwd` vendor/bin/phpunit tests/unit if [ $? -ne 0 ]; then # Test failure exit 1 fi echo "With open_basedir enabled, allowing /dev:" php -d open_basedir=`pwd`:/dev vendor/bin/phpunit tests/unit if [ $? -ne 0 ]; then # Test failure exit 1 fi echo "With mbstring.func_overload enabled:" php -d mbstring.func_overload=7 vendor/bin/phpunit tests/unit if [ $? -ne 0 ]; then # Test failure exit 1 fi if [[ "$testeach" == "1" ]]; then echo " CAPICOM:" php vendor/bin/phpunit --bootstrap tests/specific/capicom.php tests/unit echo " /dev/urandom:" php vendor/bin/phpunit --bootstrap tests/specific/dev_urandom.php tests/unit echo " libsodium:" php vendor/bin/phpunit --bootstrap tests/specific/libsodium.php tests/unit echo " mcrypt:" php vendor/bin/phpunit --bootstrap tests/specific/mcrypt.php tests/unit echo " openssl:" php vendor/bin/phpunit --bootstrap tests/specific/openssl.php tests/unit fi # Should we perform full statistical analyses? if [[ "$fulltest" == "1" ]]; then php vendor/bin/phpunit tests/full if [ $? -ne 0 ]; then # Test failure exit 1 fi fi