diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/CMakeLists.txt | 9 | ||||
| -rw-r--r-- | tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt | 32 | ||||
| -rw-r--r-- | tests/ECMQtDeclareLoggingCategoryTest/check.cmake.in | 35 | 
3 files changed, 46 insertions, 30 deletions
| diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1901ca16..fff7d988 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -150,7 +150,14 @@ if (TARGET Qt5::qmake)                       KDEInstallDirsTest.relative_or_absolute dummy)  endif ()  if (Qt5Core_FOUND) -    add_test_macro(ECMQtDeclareLoggingCategoryTest testmain) +    set(ECMQtDeclareLoggingCategoryTest_EXTRA_OPTIONS +        --build-target all +        --build-options +            "-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_CURRENT_BINARY_DIR}/ECMQtDeclareLoggingCategoryTest/InstallDirectory" +    ) +    add_test_macro(ECMQtDeclareLoggingCategoryTest +        ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/ECMQtDeclareLoggingCategoryTest/check.cmake" +    )  endif()  add_test_macro(FindModules dummy) diff --git a/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt b/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt index a921fd3b..3e8e859e 100644 --- a/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt +++ b/tests/ECMQtDeclareLoggingCategoryTest/CMakeLists.txt @@ -7,25 +7,6 @@ set(CMAKE_MODULE_PATH ${ECM_MODULE_DIR})  include(ECMQtDeclareLoggingCategory)  include(CMakeParseArguments) -function (check_file) -    set(options) -    set(oneValueArgs GENERATED EXPECTED) -    set(multiValueArgs) -    cmake_parse_arguments(ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) - -    if (NOT EXISTS "${ARGS_GENERATED}") -        message(FATAL_ERROR "${ARGS_GENERATED} was not generated") -    endif() -    file(READ "${ARGS_GENERATED}" generated_contents) -    if (NOT EXISTS "${ARGS_EXPECTED}") -        message(FATAL_ERROR "Original ${ARGS_EXPECTED} was not found") -    endif() -    file(READ "${ARGS_EXPECTED}" original_contents) -    if (NOT "${generated_contents}" STREQUAL "${original_contents}") -        message(FATAL_ERROR "${generated_file} contains '${generated_contents}' instead of '${original_contents}'") -    endif() -endfunction() -  ecm_qt_declare_logging_category(      sources      HEADER "log1.h" @@ -78,15 +59,8 @@ target_link_libraries(testmain  ecm_qt_install_logging_categories(      EXPORT LOG      FILE log.categories -    DESTINATION "${CMAKE_BINARY_DIR}/dummyinstall" -) - -check_file( -    GENERATED "${CMAKE_CURRENT_BINARY_DIR}/log.categories" -    EXPECTED "${CMAKE_CURRENT_SOURCE_DIR}/log.categories" -) -check_file( -    GENERATED "${CMAKE_CURRENT_BINARY_DIR}/log.renamecategories" -    EXPECTED "${CMAKE_CURRENT_SOURCE_DIR}/log.renamecategories" +    DESTINATION "${CMAKE_INSTALL_PREFIX}/share/qlogging-categories5"  ) +# this will be run by CTest +configure_file(check.cmake.in "${CMAKE_CURRENT_BINARY_DIR}/check.cmake" @ONLY) diff --git a/tests/ECMQtDeclareLoggingCategoryTest/check.cmake.in b/tests/ECMQtDeclareLoggingCategoryTest/check.cmake.in new file mode 100644 index 00000000..2b684148 --- /dev/null +++ b/tests/ECMQtDeclareLoggingCategoryTest/check.cmake.in @@ -0,0 +1,35 @@ +set(CMAKE_MODULE_PATH "@MODULES_DIR@/../kde-modules") +set(CMAKE_CURRENT_SOURCE_DIR "@CMAKE_CURRENT_SOURCE_DIR@") +set(CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@") + + +########################################################### + +function (check_file) +    set(options) +    set(oneValueArgs GENERATED EXPECTED) +    set(multiValueArgs) +    cmake_parse_arguments(ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + +    if (NOT EXISTS "${ARGS_GENERATED}") +        message(FATAL_ERROR "${ARGS_GENERATED} was not generated") +    endif() +    file(READ "${ARGS_GENERATED}" generated_contents) +    if (NOT EXISTS "${ARGS_EXPECTED}") +        message(FATAL_ERROR "Original ${ARGS_EXPECTED} was not found") +    endif() +    file(READ "${ARGS_EXPECTED}" original_contents) +    if (NOT "${generated_contents}" STREQUAL "${original_contents}") +        message(FATAL_ERROR "${generated_file} contains '${generated_contents}' instead of '${original_contents}'") +    endif() +endfunction() + + +check_file( +    GENERATED "${CMAKE_CURRENT_BINARY_DIR}/log.categories" +    EXPECTED "${CMAKE_CURRENT_SOURCE_DIR}/log.categories" +) +check_file( +    GENERATED "${CMAKE_CURRENT_BINARY_DIR}/log.renamecategories" +    EXPECTED "${CMAKE_CURRENT_SOURCE_DIR}/log.renamecategories" +) | 
