Merge master.
authorCarl Hetherington <cth@carlh.net>
Tue, 18 Mar 2014 18:26:03 +0000 (18:26 +0000)
committerCarl Hetherington <cth@carlh.net>
Tue, 18 Mar 2014 18:26:03 +0000 (18:26 +0000)
run/tests
src/exceptions.cc
test/private [deleted submodule]
test/test.cc
tools/dcpinfo.cc

index 1a028b67874c5650839f262417a17f2c89e3e851..0bbc047b412e18a7301286ecdfebc76fb21fded7 100755 (executable)
--- a/run/tests
+++ b/run/tests
@@ -6,24 +6,28 @@
 # in test/ref/DCP, and an error is given
 # if anything is different.
 
-private=test/private
+private=../libdcp-test-private
 work=build/test
+dcpinfo=build/tools/dcpinfo
 
 export LD_LIBRARY_PATH=build/src:build/asdcplib/src
 
 # Run the unit tests in test/
 if [ "$1" == "--debug" ]; then
     shift
-    gdb --args $work/tests
+    gdb --args $work/tests $private
 elif [ "$1" == "--valgrind" ]; then
     shift
-    valgrind --tool="memcheck" $work/tests
+    valgrind --tool="memcheck" $work/tests $private
 else
-    $work/tests $*
+    $work/tests $private $*
 fi
 
-if [ ! -e "test/private/info.log" ]; then
-    echo "Private data not found: some tests will not run"
+# Check a MXF written by the unit tests
+diff $work/baz/video1.mxf $work/baz/video2.mxf
+if [ "$?" != "0" ]; then
+    echo "FAIL: MXFs from recovery incorrect"
+    exit 1
 fi
 
 # Check the first DCP written by the unit tests
@@ -39,12 +43,19 @@ if [ "$?" != "0" ]; then
     echo "FAIL: files differ"
     exit 1
 fi
+    
+# Everything beyond this point needs $private to exist
+if [ ! -e "$private/info.log" ]; then
+    echo ""
+    echo "Private data not found: some tests will not run."
+    exit 1
+fi
 
 # Run dcpinfo on all the DCPs in private/metadata, writing $work/info.log
 rm -f $work/info.log
 for d in `find $private/metadata -mindepth 1 -maxdepth 1 -type d | sort`; do
     if [ `basename $d` != ".git" ]; then
-        build/tools/dcpinfo -s $d >> $work/info.log
+        $dcpinfo -s $d >> $work/info.log
         if [ "$?" != "0" ]; then
             echo "FAIL: dcpinfo failed for $d"
             exit 1
@@ -63,11 +74,12 @@ fi
 # $work/rewrite_subs.  This tests round-trip of subtitle reading/writing.
 rm -f $work/info2.log
 rm -rf $work/private
-cp -r $private $work
+mkdir $work/private
+cp -r $private/* $work/private
 for d in `find $work/private/metadata -mindepth 1 -maxdepth 1 -type d | sort`; do
     if [ `basename $d` != ".git" ]; then
         $work/rewrite_subs $d
-        build/tools/dcpinfo -s $d >> $work/info2.log
+        $dcpinfo -s $d >> $work/info2.log
     fi
 done
 
@@ -83,13 +95,6 @@ fi
 
 # Dump the subs of JourneyToJah... (which has MXF-wrapped subtitles)
 # and check that they are right
-build/tools/dcpinfo -s $private/JourneyToJah_TLR-1_F_EN-DE-FR_CH_51_2K_LOK_20140225_DGL_SMPTE_OV >> $work/jah.log
+$dcpinfo -s $private/JourneyToJah_TLR-1_F_EN-DE-FR_CH_51_2K_LOK_20140225_DGL_SMPTE_OV >> $work/jah.log
 
-# Check a MXF written by the unit tests
-diff $work/baz/video1.mxf $work/baz/video2.mxf
-if [ "$?" != "0" ]; then
-    echo "FAIL: MXFs from recovery incorrect"
-    exit 1
-fi
-    
 echo "PASS"
index e5a46948ce504ef14f8164a3ab8ec585ec3586fa..7cfcd6991d6b3c60ba50eec9491c18650d0c451a 100644 (file)
@@ -28,7 +28,7 @@ using std::string;
 using namespace dcp;
 
 FileError::FileError (string message, boost::filesystem::path filename, int number)
-       : _message (String::compose ("%1 (error %2) (%3)", message, filename.string(), number))
+       : _message (String::compose ("%1 (%2) (error %3)", message, filename.string(), number))
        , _filename (filename)
        , _number (number)
 {
diff --git a/test/private b/test/private
deleted file mode 160000 (submodule)
index b1b5665..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit b1b56652bd67e74817e02933412190b33d4823b6
index 0b56b9036ac0c8190e39ec66f9d3921fb9f1ed6e..995a5b23db488e67935d12c9113589cf4bf5d54c 100644 (file)
 
 using std::string;
 
+string private_test;
+
 struct TestConfig
 {
        TestConfig()
        {
                dcp::init ();
+               if (boost::unit_test::framework::master_test_suite().argc >= 2) {
+                       private_test = boost::unit_test::framework::master_test_suite().argv[1];
+               }
        }
 };
 
@@ -47,5 +52,4 @@ wav (dcp::Channel)
        return "test/data/1s_24-bit_48k_silence.wav";
 }
 
-string private_test = "test/private";
 
index b76993bfd2487b19e0cae5e8e54e43eebbd70493..62751202812a47bc71aedc17c6dbb42d78af3a96 100644 (file)
@@ -99,7 +99,7 @@ main (int argc, char* argv[])
                exit (EXIT_FAILURE);
        }
 
-       cout << "DCP: " << argv[optind] << "\n";
+       cout << "DCP: " << boost::filesystem::path(argv[optind]).filename().string() << "\n";
 
        list<shared_ptr<CPL> > cpls = dcp->cpls ();