view ui/tests/CMakeLists.txt @ 306:9c5e6b142611

Set the home directory to a temporary location to avoid writing into real nss stores
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 03 Apr 2014 15:30:25 +0200
parents 4a3febc6d806
children 2fd69803d219
line wrap: on
line source
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})

include_directories(${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_SOURCE_DIR}/ui
   ${CMAKE_SOURCE_DIR}/common
   ${CMAKE_SOURCE_DIR}/cinst)

find_package(Qt5Test)
include_directories(${Qt5Test_INCLUDE_DIRS})
find_program(HIAWATHA_EXECUTABLE hiawatha)

if (NOT HIAWATHA_EXECUTABLE)
   message (STATUS "WARNING: hiawatha webserver not found. Downloader tests will fail.")
else()
  add_definitions(-DHIAWATHA_EXECUTABLE="${HIAWATHA_EXECUTABLE}")
endif()

macro(add_m13_test _source _additional_sources)
  set(_test ${_source})
  get_filename_component(_name ${_source} NAME_WE)
  set(_test_sources_with_resources ${_test} "${_additional_sources};${CMAKE_CURRENT_SOURCE_DIR}/common.cpp")
  qt5_add_resources(_test_sources_with_resources
     ${CMAKE_CURRENT_SOURCE_DIR}/data/testdata.qrc)
  add_executable(${_name} ${_test_sources_with_resources})
  add_test(m13-${_name} ${_name})
  target_link_libraries(${_name} Qt5::Test Qt5::Widgets
     m13_common
     ${POLARSSL_LIBRARIES}
     ${EXTRA_STATIC_LIBS})
endmacro()

# Add the current source dir to the definition
# so that it can be used in file names in the tests.
add_definitions(-DSOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}")
add_m13_test(certlistparsertest.cpp "${CERTIFICATELIST_SOURCES}")

# Downloader
if (HIAWATHA_EXECUTABLE)
  set(DOWNLOADER_SOURCES_WITH_RESOURCES ${DOWNLOADER_SOURCES})
  qt5_add_resources(DOWNLOADER_SOURCES_WITH_RESOURCES ${M13UI_RESOURCES})
  add_m13_test(downloadertest.cpp "${DOWNLOADER_SOURCES_WITH_RESOURCES}")
endif()

# Cinstprocess
add_m13_test(cinstprocesstest.cpp "${CERTIFICATELIST_SOURCES}")
add_dependencies(cinstprocesstest cinst)
add_m13_test(commontest.cpp "")

if (WIN32)
   add_m13_test(windowsstoretest.cpp "${CERTIFICATELIST_SOURCES};${CMAKE_SOURCE_DIR}/cinst/windowsstore.c")
endif (WIN32)

add_m13_test(nsstest.cpp "${CERTIFICATELIST_SOURCES};${CMAKE_SOURCE_DIR}/cinst/nssstore_linux.c")
add_dependencies(nsstest mozilla)

#add_m13_test(${CMAKE_SOURCE_DIR}/ui/main.cpp "${M13UI_SOURCES}")

http://wald.intevation.org/projects/trustbridge/