test.sh 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/bash
  2. cd $(dirname $0)
  3. ./compile_extension.sh
  4. tests=( array_test.php encode_decode_test.php generated_class_test.php map_field_test.php well_known_test.php descriptors_test.php wrapper_type_setters_test.php)
  5. for t in "${tests[@]}"
  6. do
  7. echo "****************************"
  8. echo "* $t"
  9. echo "****************************"
  10. php -dextension=../ext/google/protobuf/modules/protobuf.so `which phpunit` --bootstrap autoload.php $t
  11. echo ""
  12. done
  13. for t in "${tests[@]}"
  14. do
  15. echo "****************************"
  16. echo "* $t persistent"
  17. echo "****************************"
  18. php -d protobuf.keep_descriptor_pool_after_request=1 -dextension=../ext/google/protobuf/modules/protobuf.so `which phpunit` --bootstrap autoload.php $t
  19. echo ""
  20. done
  21. # # Make sure to run the memory test in debug mode.
  22. # php -dextension=../ext/google/protobuf/modules/protobuf.so memory_leak_test.php
  23. export ZEND_DONT_UNLOAD_MODULES=1
  24. export USE_ZEND_ALLOC=0
  25. valgrind --leak-check=yes php -dextension=../ext/google/protobuf/modules/protobuf.so memory_leak_test.php
  26. valgrind --leak-check=yes php -d protobuf.keep_descriptor_pool_after_request=1 -dextension=../ext/google/protobuf/modules/protobuf.so memory_leak_test.php
  27. # TODO(teboring): Only for debug (phpunit has memory leak which blocks this beging used by
  28. # regresssion test.)
  29. # for t in "${tests[@]}"
  30. # do
  31. # echo "****************************"
  32. # echo "* $t (memory leak)"
  33. # echo "****************************"
  34. # valgrind --leak-check=yes php -dextension=../ext/google/protobuf/modules/protobuf.so `which phpunit` --bootstrap autoload.php $t
  35. # echo ""
  36. # done