if [ "$1" == "--debug" ]; then
shift
LD_LIBRARY_PATH=build/src:build/asdcplib/src gdb --args build/test/tests
+elif [ "$1" == "--valgrind" ]; then
+ shift
+ LD_LIBRARY_PATH=build/src:build/asdcplib/src valgrind --tool="memcheck" build/test/tests
else
LD_LIBRARY_PATH=build/src:build/asdcplib/src build/test/tests
fi
rm -f build/test/info.log
-if [ -e "../libdcp-test" ]; then
- for d in `find ../libdcp-test -mindepth 1 -maxdepth 1 -type d`; do
- LD_LIBRARY_PATH=build/src:build/asdcplib/src build/tools/dcpinfo $d >> build/test/info.log
- if [ "$?" != "0" ]; then
- echo "FAIL: dcpinfo failed"
- exit 1
- fi
- done
-else
+if [ ! -e "../libdcp-test" ]; then
echo "Test corpus not found"
exit 1
fi
-diff -q build/test/info.log test/ref/info.log
+for d in `find ../libdcp-test -mindepth 1 -maxdepth 1 -type d`; do
+ if [ `basename $d` != ".git" ]; then
+ LD_LIBRARY_PATH=build/src:build/asdcplib/src build/tools/dcpinfo -s $d >> build/test/info.log
+ if [ "$?" != "0" ]; then
+ echo "FAIL: dcpinfo failed for $d"
+ exit 1
+ fi
+ fi
+done
+
+diff -q build/test/info.log ../libdcp-test/info.log
if [ "$?" != "0" ]; then
echo "FAIL: dcpinfo output incorrect"
exit 1
fi
+rm -f build/test/info2.log
+rm -rf build/test/libdcp-test
+
+cp -r ../libdcp-test build/test
+for d in `find build/test/libdcp-test -mindepth 1 -maxdepth 1 -type d`; do
+ if [ `basename $d` != ".git" ]; then
+ LD_LIBRARY_PATH=build/src:build/asdcplib/src build/test/rewrite_subs $d
+ LD_LIBRARY_PATH=build/src:build/asdcplib/src build/tools/dcpinfo -s $d >> build/test/info2.log
+ fi
+done
+
+sed -i "s/DCP: build\/test/DCP: \.\./g" build/test/info2.log
+
+diff -q build/test/info2.log ../libdcp-test/info.log
+if [ "$?" != "0" ]; then
+ echo "FAIL: dcpinfo output from rewrite incorrect"
+ exit 1
+fi
+
echo "PASS"