Use run/environment for paths in run/tests.
[dcpomatic.git] / run / tests
index 301a5df71e699731ab1aa8772f9a5b8156d18968..a750fde101b81e943c6ae3fcc064405737a95feb 100755 (executable)
--- a/run/tests
+++ b/run/tests
@@ -1,14 +1,36 @@
 #!/bin/bash
 #
 # e.g. --run_tests=foo
+set -e
+
+PRIVATE_GIT="881c48805e352dfe150993814757ca974282be18"
+
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+source $DIR/environment
+
+if [ "$1" == "--check" ]; then
+       shift 1
+       check=1
+else
+       check=0
+fi
 
 if [ "$(uname)" == "Linux" ]; then 
-  export LD_LIBRARY_PATH=build/src/lib:/usr/local/lib:/usr/local/lib64:$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
+  export DCPOMATIC_TEST_TOOLS_PATH=/opt/asdcplib/bin
+  if [ -f /src/backports/dcp_inspect ]; then
+    export DCPOMATIC_DCP_INSPECT=/src/backports/dcp_inspect
+  fi
+  set +e
+  python3 -m clairmeta.cli --help > /dev/null 2>&1
+  if [ "$?" == "0" ]; then
+    export DCPOMATIC_CLAIRMETA=1
+  fi
+  set -e
 fi
 
 if [ "$(uname)" == "Darwin" ]; then
@@ -21,12 +43,24 @@ if [ "$(uname)" == "Darwin" ]; then
   cp ../libdcp/ratings $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:/Users/ci/workspace/lib
   # We need to find ffcmp in here
   export PATH=$PATH:/Users/ci/workspace/bin
 fi
 
+if [ "$check" == "1" ]; then
+       if [ "$DCPOMATIC_TEST_PRIVATE" == "" ]; then
+               pushd ../dcpomatic-test-private
+       else
+               pushd $DCPOMATIC_TEST_PRIVATE
+       fi
+       current=$(git rev-parse HEAD)
+       if [ "$current" != "$PRIVATE_GIT" ]; then
+               echo "Unexpected dcpomatic-test-private version"
+               exit 1
+       fi
+       popd
+fi
+
 if [ "$1" == "--debug" ]; then
     shift;
     gdb --args build/test/unit-tests --catch_system_errors=no --log_level=test_suite $*