diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index b0469ecf..3839ac93 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,48 +1,64 @@ include_directories(${CMAKE_SOURCE_DIR}/src) include_directories(${CMAKE_SOURCE_DIR}/3rdparty) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/testlib") MACRO(ZANSHIN_MANUAL_TESTS) + set(prefix "${CMAKE_CURRENT_SOURCE_DIR}") + string(REPLACE "${CMAKE_SOURCE_DIR}" "" prefix "${prefix}") + string(REPLACE "/" "-" prefix "${prefix}") + string(REPLACE "\\" "-" prefix "${prefix}") + string(LENGTH "${prefix}" prefix_length) + string(SUBSTRING "${prefix}" 1 ${prefix_length}-1 prefix) + FOREACH(_testname ${ARGN}) - add_executable(${_testname} ${_testname}.cpp ${CMAKE_SOURCE_DIR}/src/zanshin/app/dependencies.cpp) + set(_prefixed_testname "${prefix}-${_testname}") + add_executable(${_prefixed_testname} ${_testname}.cpp ${CMAKE_SOURCE_DIR}/src/zanshin/app/dependencies.cpp) kde_enable_exceptions() - target_link_libraries(${_testname} + target_link_libraries(${_prefixed_testname} Qt5::Test - + akonadi domain presentation scripting utils widgets ) ENDFOREACH(_testname) ENDMACRO(ZANSHIN_MANUAL_TESTS) MACRO(ZANSHIN_AUTO_TESTS) + set(prefix "${CMAKE_CURRENT_SOURCE_DIR}") + string(REPLACE "${CMAKE_SOURCE_DIR}" "" prefix "${prefix}") + string(REPLACE "/" "-" prefix "${prefix}") + string(REPLACE "\\" "-" prefix "${prefix}") + string(LENGTH "${prefix}" prefix_length) + string(SUBSTRING "${prefix}" 1 ${prefix_length}-1 prefix) + FOREACH(_testname ${ARGN}) - add_executable(${_testname} ${_testname}.cpp) - add_test(${_testname} ${_testname}) + set(_prefixed_testname "${prefix}-${_testname}") + add_executable(${_prefixed_testname} ${_testname}.cpp) + add_test(${_prefixed_testname} ${_prefixed_testname}) kde_enable_exceptions() - target_link_libraries(${_testname} + target_link_libraries(${_prefixed_testname} Qt5::Test - + testlib akonadi domain presentation scripting utils widgets KF5::AkonadiXml ) ENDFOREACH(_testname) ENDMACRO(ZANSHIN_AUTO_TESTS) add_subdirectory(features) add_subdirectory(manual) add_subdirectory(benchmarks) add_subdirectory(testlib) add_subdirectory(units) diff --git a/tests/features/renku/CMakeLists.txt b/tests/features/renku/CMakeLists.txt index a62be60b..7caefa27 100644 --- a/tests/features/renku/CMakeLists.txt +++ b/tests/features/renku/CMakeLists.txt @@ -1,11 +1,11 @@ add_subdirectory(features) -add_executable(renku-features-run ../features-run.cpp) -add_test(renku-features-run renku-features-run) +add_executable(tests-features-renku ../features-run.cpp) +add_test(tests-features-renku tests-features-renku) add_definitions(-DUSER_XMLDATA="${CMAKE_CURRENT_SOURCE_DIR}/../testenv/data/testdata.xml" -DCUKE_STEPS="${CMAKE_CURRENT_BINARY_DIR}/features/step_definitions/renku-cuke-steps" -DFEATURES_DIR="${CMAKE_CURRENT_SOURCE_DIR}") -target_link_libraries(renku-features-run +target_link_libraries(tests-features-renku Qt5::Core Qt5::Network ) diff --git a/tests/features/zanshin/CMakeLists.txt b/tests/features/zanshin/CMakeLists.txt index 423fb508..4e5a6ba2 100644 --- a/tests/features/zanshin/CMakeLists.txt +++ b/tests/features/zanshin/CMakeLists.txt @@ -1,11 +1,11 @@ add_subdirectory(features) -add_executable(zanshin-features-run ../features-run.cpp) -add_test(zanshin-features-run zanshin-features-run) +add_executable(tests-features-zanshin ../features-run.cpp) +add_test(tests-features-zanshin tests-features-zanshin) add_definitions(-DUSER_XMLDATA="${CMAKE_CURRENT_SOURCE_DIR}/../testenv/data/testdata.xml" -DCUKE_STEPS="${CMAKE_CURRENT_BINARY_DIR}/features/step_definitions/zanshin-cuke-steps" -DFEATURES_DIR="${CMAKE_CURRENT_SOURCE_DIR}") -target_link_libraries(zanshin-features-run +target_link_libraries(tests-features-zanshin Qt5::Core Qt5::Network ) diff --git a/tests/testlib/MacroAkonadiAutoTests.cmake b/tests/testlib/MacroAkonadiAutoTests.cmake index d94c1aaa..20758a83 100644 --- a/tests/testlib/MacroAkonadiAutoTests.cmake +++ b/tests/testlib/MacroAkonadiAutoTests.cmake @@ -1,33 +1,41 @@ set(_akonaditest_source_dir ${CMAKE_CURRENT_LIST_DIR}) MACRO(ZANSHIN_AKONADI_AUTO_TESTS) + set(prefix "${CMAKE_CURRENT_SOURCE_DIR}") + string(REPLACE "${CMAKE_SOURCE_DIR}" "" prefix "${prefix}") + string(REPLACE "/" "-" prefix "${prefix}") + string(REPLACE "\\" "-" prefix "${prefix}") + string(LENGTH "${prefix}" prefix_length) + string(SUBSTRING "${prefix}" 1 ${prefix_length}-1 prefix) + FOREACH(_testname ${ARGN}) - add_executable(${_testname} ${_testname}.cpp) + set(_prefixed_testname "${prefix}-${_testname}") + add_executable(${_prefixed_testname} ${_testname}.cpp) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}") - target_link_libraries(${_testname} Qt5::Test akonadi domain utils) + target_link_libraries(${_prefixed_testname} Qt5::Test akonadi domain utils) set(_location ${CMAKE_CURRENT_BINARY_DIR}/${_testname}) if (WIN32) set(_executable ${_location}.exe) else (WIN32) set(_executable ${_location}) endif (WIN32) find_program(_testrunner akonaditest) set(AKONADITEST_CWD ${CMAKE_CURRENT_SOURCE_DIR}) set(zanshin-testcommand "${_executable} 2>&1") - configure_file(${_akonaditest_source_dir}/akonaditest-run.sh.in ${_testname}-run.sh) + configure_file(${_akonaditest_source_dir}/akonaditest-run.sh.in ${_prefixed_testname}-run.sh) set(akonaditest-run-cmd ${_testrunner} -c ${CMAKE_CURRENT_SOURCE_DIR}/testenv/config.xml - sh ${CMAKE_CURRENT_BINARY_DIR}/${_testname}-run.sh 2> ${CMAKE_CURRENT_BINARY_DIR}/akonaditest-${_testname}.log) + sh ${CMAKE_CURRENT_BINARY_DIR}/${_prefixed_testname}-run.sh 2> ${CMAKE_CURRENT_BINARY_DIR}/akonaditest-${_prefixed_testname}.log) - add_custom_target(${_testname}-run + add_custom_target(${_prefixed_testname}-run COMMAND ${akonaditest-run-cmd} WORKING_DIRECTORY ${AKONADITEST_CWD} USES_TERMINAL ) - add_test(zanshin-${_testname} ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_BINARY_DIR} ${_testname}-run) + add_test(${_prefixed_testname} ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_BINARY_DIR} ${_prefixed_testname}-run) ENDFOREACH(_testname) ENDMACRO(ZANSHIN_AKONADI_AUTO_TESTS) diff --git a/tests/units/akonadi/CMakeLists.txt b/tests/units/akonadi/CMakeLists.txt index 67795d69..64c05c9a 100644 --- a/tests/units/akonadi/CMakeLists.txt +++ b/tests/units/akonadi/CMakeLists.txt @@ -1,28 +1,28 @@ include(MacroAkonadiAutoTests) zanshin_auto_tests( akonadiapplicationselectedattributetest akonadicontextqueriestest akonadicontextrepositorytest akonadidatasourcequeriestest akonadidatasourcerepositorytest akonadilivequeryhelperstest akonadilivequeryintegratortest akonadinotequeriestest akonadinoterepositorytest akonadiprojectqueriestest akonadiprojectrepositorytest akonadiserializertest akonadistoragesettingstest akonaditagqueriestest akonaditagrepositorytest akonaditaskqueriestest akonaditaskrepositorytest akonaditimestampattributetest ) zanshin_akonadi_auto_tests( akonadistoragetest ) -target_link_libraries(akonadistoragetest akonadi testlib) +target_link_libraries(tests-units-akonadi-akonadistoragetest akonadi testlib) diff --git a/tests/units/migrator/CMakeLists.txt b/tests/units/migrator/CMakeLists.txt index 8b06060d..90e97a75 100644 --- a/tests/units/migrator/CMakeLists.txt +++ b/tests/units/migrator/CMakeLists.txt @@ -1,15 +1,15 @@ include(MacroAkonadiAutoTests) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../src/zanshin/migrator) zanshin_auto_tests( ) zanshin_akonadi_auto_tests( zanshin021migrationtest ) -target_link_libraries(zanshin021migrationtest +target_link_libraries(tests-units-migrator-zanshin021migrationtest migrator testlib )