X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=run%2Ftests;h=0c5c8c0c358fc46a8071b7569bc5f3ab2d62007d;hb=c22eb498445bd0bdc7f72149eda0d599e9fcaa63;hp=e6cdf4ba84656f4b739b0c54bd3e4d5ff16a6652;hpb=89115db77729a2c99f1a09ff6a461720e16f889e;p=dcpomatic.git diff --git a/run/tests b/run/tests index e6cdf4ba8..0c5c8c0c3 100755 --- a/run/tests +++ b/run/tests @@ -1,11 +1,55 @@ #!/bin/bash +# +# e.g. --run_tests=foo + +if [ "$(uname)" == "Linux" ]; then + export LD_LIBRARY_PATH=build/src/lib:$LD_LIBRARY_PATH + rm -f build/test/dcpomatic2_openssl + # This must be our patched openssl or tests will fail + if [ ! -f build/test/dcpomatic2_openssl ]; then + ln -s ../../../openssl/apps/openssl build/test/dcpomatic2_openssl + fi +fi + +if [ "$(uname)" == "Darwin" ]; then + resources=build/Resources + rm -rf $resources + mkdir -p $resources + cp fonts/*.ttf $resources + cp -r ../libdcp/tags $resources + cp -r ../libdcp/xsd $resources + rm -f build/test/openssl + ln -s ../../../openssl/apps/openssl build/test/openssl + # SIP stops this being passed in from the caller's environment + export DYLD_LIBRARY_PATH=/Users/ci/osx-environment/x86_64/10.10/lib + # We need to find ffcmp in here + export PATH=$PATH:/Users/ci/workspace/bin +fi -export LD_LIBRARY_PATH=build/src/lib:$LD_LIBRARY_PATH if [ "$1" == "--debug" ]; then - gdb --args build/test/unit-tests --catch_system_errors=no + shift; + gdb --args build/test/unit-tests --catch_system_errors=no --log_level=test_suite $* +elif [ "$1" == "--backtrace" ]; then + shift; + gdb -batch -ex "run" -ex "thread apply all bt" -return-child-result --args build/test/unit-tests --catch_system_errors=yes $* elif [ "$1" == "--valgrind" ]; then - valgrind --tool="memcheck" --leak-check=full build/test/unit-tests + shift; +# valgrind --tool="memcheck" --vgdb=yes --vgdb-error=0 build/test/unit-tests $* + valgrind --tool="memcheck" --suppressions=suppressions build/test/unit-tests $* +elif [ "$1" == "--callgrind" ]; then + shift; + valgrind --tool="callgrind" build/test/unit-tests $* +elif [ "$1" == "--quiet" ]; then + shift; + build/test/unit-tests --catch_system_errors=no $* +elif [ "$1" == "--drd" ]; then + shift; + valgrind --tool="drd" build/test/unit-tests $* +elif [ "$1" == "--helgrind" ]; then + shift; + valgrind --tool="helgrind" build/test/unit-tests $* else - build/test/unit-tests --catch_system_errors=no + ulimit -c unlimited + build/test/unit-tests --catch_system_errors=no --log_level=test_suite $* +# build/test/unit-tests --catch_system_errors=no $* fi -