From d6074be56b3b8e57fa3b65316078e7c83e092d01 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Tue, 15 May 2018 20:38:27 +0100 Subject: [PATCH] unit_tests: set default data dir to the source tree at build time --- tests/unit_tests/CMakeLists.txt | 2 ++ tests/unit_tests/main.cpp | 11 +++-------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/tests/unit_tests/CMakeLists.txt b/tests/unit_tests/CMakeLists.txt index 9c58536c9..249dbdbe8 100644 --- a/tests/unit_tests/CMakeLists.txt +++ b/tests/unit_tests/CMakeLists.txt @@ -103,6 +103,8 @@ if (NOT MSVC) COMPILE_FLAGS " -Wno-undef -Wno-sign-compare") endif () +SET_PROPERTY(SOURCE main.cpp PROPERTY COMPILE_FLAGS -DDEFAULT_DATA_DIR="\\"${CMAKE_SOURCE_DIR}/tests/data\\"") + SET_PROPERTY(SOURCE memwipe.cpp PROPERTY COMPILE_FLAGS -Ofast) add_test( diff --git a/tests/unit_tests/main.cpp b/tests/unit_tests/main.cpp index 85c6cbed5..13b62cbb4 100644 --- a/tests/unit_tests/main.cpp +++ b/tests/unit_tests/main.cpp @@ -61,8 +61,8 @@ int main(int argc, char** argv) ::testing::InitGoogleTest(&argc, argv); po::options_description desc_options("Command line options"); - const command_line::arg_descriptor arg_data_dir = { "data-dir", "Data files directory" }; - command_line::add_arg(desc_options, arg_data_dir, ""); + const command_line::arg_descriptor arg_data_dir = { "data-dir", "Data files directory", DEFAULT_DATA_DIR }; + command_line::add_arg(desc_options, arg_data_dir); po::variables_map vm; bool r = command_line::handle_error_helper(desc_options, [&]() @@ -74,12 +74,7 @@ int main(int argc, char** argv) if (! r) return 1; - if (command_line::is_arg_defaulted(vm, arg_data_dir)) - unit_test::data_dir = boost::filesystem::canonical(boost::filesystem::path(epee::string_tools::get_current_module_folder())) - .parent_path().parent_path().parent_path().parent_path() - .append("tests").append("data"); - else - unit_test::data_dir = command_line::get_arg(vm, arg_data_dir); + unit_test::data_dir = command_line::get_arg(vm, arg_data_dir); return RUN_ALL_TESTS(); }