diff options
Diffstat (limited to 'php/tests/test.sh')
-rwxr-xr-x | php/tests/test.sh | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/php/tests/test.sh b/php/tests/test.sh new file mode 100755 index 00000000..6e70eb2a --- /dev/null +++ b/php/tests/test.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +VERSION=$1 + +export PATH=/usr/local/php-$VERSION/bin:$PATH +export C_INCLUDE_PATH=/usr/local/php-$VERSION/include/php/main:/usr/local/php-$VERSION/include/php:$C_INCLUDE_PATH +export CPLUS_INCLUDE_PATH=/usr/local/php-$VERSION/include/php/main:/usr/local/php-$VERSION/include/php:$CPLUS_INCLUDE_PATH + +# Compile c extension +pushd ../ext/google/protobuf/ +make clean || true +set -e +# Add following in configure for debug: --enable-debug CFLAGS='-g -O0' +phpize && ./configure CFLAGS='-g -O0' && make +popd + +tests=( array_test.php encode_decode_test.php generated_class_test.php generated_phpdoc_test.php map_field_test.php well_known_test.php generated_service_test.php descriptors_test.php ) + +for t in "${tests[@]}" +do + echo "****************************" + echo "* $t" + echo "****************************" + php -dextension=../ext/google/protobuf/modules/protobuf.so `which phpunit` --bootstrap autoload.php $t + echo "" +done + +# # Make sure to run the memory test in debug mode. +# php -dextension=../ext/google/protobuf/modules/protobuf.so memory_leak_test.php + +export ZEND_DONT_UNLOAD_MODULES=1 +export USE_ZEND_ALLOC=0 +valgrind --leak-check=yes php -dextension=../ext/google/protobuf/modules/protobuf.so memory_leak_test.php + +# TODO(teboring): Only for debug (phpunit has memory leak which blocks this beging used by +# regresssion test.) + +# for t in "${tests[@]}" +# do +# echo "****************************" +# echo "* $t (memory leak)" +# echo "****************************" +# valgrind --leak-check=yes php -dextension=../ext/google/protobuf/modules/protobuf.so `which phpunit` --bootstrap autoload.php $t +# echo "" +# done |