diff options
author | Bo Yang <teboring@google.com> | 2016-09-30 00:07:47 +0000 |
---|---|---|
committer | Bo Yang <teboring@google.com> | 2016-10-10 11:44:21 -0700 |
commit | fd332d146d345a04c8d7c6874b8fb654d2621902 (patch) | |
tree | 0d2f945d2f80f5a1d0b733e3de51dd102320d6c6 /tests.sh | |
parent | 89db7ce02bd57e8de55b1e0bf40256be312eb8d2 (diff) | |
download | protobuf-fd332d146d345a04c8d7c6874b8fb654d2621902.tar.gz protobuf-fd332d146d345a04c8d7c6874b8fb654d2621902.tar.bz2 protobuf-fd332d146d345a04c8d7c6874b8fb654d2621902.zip |
Add php test script for automated tests.
Diffstat (limited to 'tests.sh')
-rwxr-xr-x | tests.sh | 64 |
1 files changed, 59 insertions, 5 deletions
@@ -35,9 +35,7 @@ internal_build_cpp() { build_cpp() { internal_build_cpp make check -j2 - pushd conformance - make test_cpp - popd + cd conformance && make test_cpp && cd .. # Verify benchmarking code can build successfully. git submodule init @@ -52,7 +50,7 @@ build_cpp_distcheck() { make dist # List all files that should be included in the distribution package. - git ls-files | grep "^\(java\|python\|objectivec\|csharp\|js\|ruby\|php\|cmake\|examples\)" |\ + git ls-files | grep "^\(java\|python\|objectivec\|csharp\|js\|ruby\|cmake\|examples\)" |\ grep -v ".gitignore" | grep -v "java/compatibility_tests" > dist.lst # Unzip the dist tar file. DIST=`ls *.tar.gz` @@ -297,6 +295,8 @@ build_python() { build_python_cpp() { internal_build_cpp internal_install_python_deps + export LD_LIBRARY_PATH=../src/.libs # for Linux + export DYLD_LIBRARY_PATH=../src/.libs # for OS X cd python # Only test Python 2.6/3.x on Linux if [ $(uname -s) == "Linux" ]; then @@ -334,6 +334,54 @@ build_javascript() { cd js && npm install && npm test && cd .. } +build_php5.5_c() { + ln -sfn /usr/bin/php5.5 /usr/bin/php + ln -sfn /usr/bin/php-config5.5 /usr/bin/php-config + ln -sfn /usr/bin/phpize5.5 /usr/bin/phpize + cd php/tests && /bin/bash ./test.sh && cd ../.. +} + +build_php5.5() { + ln -sfn /usr/bin/php5.5 /usr/bin/php + ln -sfn /usr/bin/php-config5.5 /usr/bin/php-config + ln -sfn /usr/bin/phpize5.5 /usr/bin/phpize + rm -rf vendor + cp -r /usr/local/vendor-5.5 vendor + ./vendor/bin/phpunit +} + +build_php5.6_c() { + ln -sfn /usr/bin/php5.6 /usr/bin/php + ln -sfn /usr/bin/php-config5.6 /usr/bin/php-config + ln -sfn /usr/bin/phpize5.6 /usr/bin/phpize + cd php/tests && /bin/bash ./test.sh && cd ../.. +} + +build_php5.6() { + ln -sfn /usr/bin/php5.6 /usr/bin/php + ln -sfn /usr/bin/php-config5.6 /usr/bin/php-config + ln -sfn /usr/bin/phpize5.6 /usr/bin/phpize + rm -rf vendor + cp -r /usr/local/vendor-5.6 vendor + ./vendor/bin/phpunit +} + +build_php7.0_c() { + ln -sfn /usr/bin/php7.0 /usr/bin/php + ln -sfn /usr/bin/php-config7.0 /usr/bin/php-config + ln -sfn /usr/bin/phpize7.0 /usr/bin/phpize + cd php/tests && /bin/bash ./test.sh && cd ../.. +} + +build_php7.0() { + ln -sfn /usr/bin/php7.0 /usr/bin/php + ln -sfn /usr/bin/php-config7.0 /usr/bin/php-config + ln -sfn /usr/bin/phpize7.0 /usr/bin/phpize + rm -rf vendor + cp -r /usr/local/vendor-7.0 vendor + ./vendor/bin/phpunit +} + # Note: travis currently does not support testing more than one language so the # .travis.yml cheats and claims to only be cpp. If they add multiple language # support, this should probably get updated to install steps and/or @@ -364,7 +412,13 @@ Usage: $0 { cpp | ruby21 | ruby22 | jruby | - ruby_all) + ruby_all | + php5.5 | + php5.5_c | + php5.6 | + php5.6_c | + php7.0 | + php7.0_c) " exit 1 fi |