diff options
author | Tim Mayberry <mojofunk@gmail.com> | 2014-11-29 16:30:35 +0700 |
---|---|---|
committer | Tim Mayberry <mojofunk@gmail.com> | 2014-12-03 17:31:04 +0700 |
commit | 61f9ca9f3c3fb8283ebc67c39f9083730511488b (patch) | |
tree | f7defd6644178a6cedc10b31e66b298a0f9987ce /libs | |
parent | f6e15a3b6bfdfc4ceb6e3d4f2c97dc2b7009a13a (diff) |
Use test utility function to find evoral test files
either via EVORAL_TEST_PATH env var or on windows via directory relative
to dll
Diffstat (limited to 'libs')
-rwxr-xr-x | libs/evoral/run-tests.sh | 19 | ||||
-rw-r--r-- | libs/evoral/test/SMFTest.cpp | 15 |
2 files changed, 22 insertions, 12 deletions
diff --git a/libs/evoral/run-tests.sh b/libs/evoral/run-tests.sh index 8eb7ba8820..2a96c0037f 100755 --- a/libs/evoral/run-tests.sh +++ b/libs/evoral/run-tests.sh @@ -1,17 +1,14 @@ #!/bin/sh -srcdir=`pwd` -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$srcdir/../../build/libs/evoral:$srcdir/../../build/libs/pbd -if [ ! -f './test/testdata/TakeFive.mid' ]; then - echo "This script must be run from within the libs/evoral directory"; - exit 1; -fi +SCRIPTPATH=$( cd $(dirname $0) ; pwd -P ) +TOP="$SCRIPTPATH/../.." +LIBS_DIR="$TOP/build/libs" -# Make symlink to TakeFive.mid in build directory -cd ../../build/libs/evoral -mkdir -p ./test/testdata -ln -fs $srcdir/test/testdata/TakeFive.mid \ - ./test/testdata/TakeFive.mid +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$LIBS_DIR/evoral:$LIBS_DIR/pbd + +export EVORAL_TEST_PATH="$SCRIPTPATH/test/testdata" + +cd $LIBS_DIR/evoral lcov -q -d ./src -z ./run-tests diff --git a/libs/evoral/test/SMFTest.cpp b/libs/evoral/test/SMFTest.cpp index 3c82b14f95..9bbe021947 100644 --- a/libs/evoral/test/SMFTest.cpp +++ b/libs/evoral/test/SMFTest.cpp @@ -21,11 +21,24 @@ SMFTest::createNewFileTest () CPPUNIT_ASSERT(Glib::file_test (new_file_path, Glib::FILE_TEST_IS_REGULAR)); } +PBD::Searchpath +test_search_path () +{ +#ifdef PLATFORM_WINDOWS + string wsp(g_win32_get_package_installation_directory_of_module(NULL)); + return Glib::build_filename (wsp, "evoral_testdata"); +#else + return Glib::getenv("EVORAL_TEST_PATH"); +#endif +} + void SMFTest::takeFiveTest () { TestSMF smf; - smf.open("./test/testdata/TakeFive.mid"); + string testdata_path; + CPPUNIT_ASSERT (find_file (test_search_path (), "TakeFive.mid", testdata_path)); + smf.open(testdata_path); CPPUNIT_ASSERT(!smf.is_empty()); seq->start_write(); |