1462e4f70e
* SelfTests: Added a cEvent stress-test. * cNetwork: Fixed startup event hang. The original code used to hang with a ~ 1:50000 chance, because on Linux the cEvent was destroyed before its "Set()" returned.
51 lines
1.2 KiB
CMake
51 lines
1.2 KiB
CMake
cmake_minimum_required (VERSION 2.6)
|
|
|
|
enable_testing()
|
|
|
|
include_directories(${CMAKE_SOURCE_DIR}/src/)
|
|
|
|
add_definitions(-DTEST_GLOBALS=1)
|
|
|
|
# Create a single OSSupport library that contains all the OSSupport code used in the tests:
|
|
# Only needed for Windows; Linux already defines the OSSupport lib
|
|
if (WIN32)
|
|
set (OSSupport_SRCS
|
|
${CMAKE_SOURCE_DIR}/src/OSSupport/CriticalSection.cpp
|
|
${CMAKE_SOURCE_DIR}/src/OSSupport/Event.cpp
|
|
${CMAKE_SOURCE_DIR}/src/StringUtils.cpp
|
|
)
|
|
set (OSSupport_HDRS
|
|
${CMAKE_SOURCE_DIR}/src/OSSupport/CriticalSection.h
|
|
${CMAKE_SOURCE_DIR}/src/OSSupport/Event.h
|
|
${CMAKE_SOURCE_DIR}/src/StringUtils.h
|
|
${CMAKE_SOURCE_DIR}/src/Globals.h
|
|
)
|
|
add_library(OSSupport
|
|
${OSSupport_SRCS}
|
|
${OSSupport_HDRS}
|
|
)
|
|
endif()
|
|
|
|
# Define individual tests:
|
|
|
|
# StressEvent: Stress-test the cEvent implementation:
|
|
add_executable(StressEvent-exe StressEvent.cpp)
|
|
target_link_libraries(StressEvent-exe OSSupport)
|
|
add_test(NAME StressEvent-test COMMAND StressEvent-exe)
|
|
|
|
|
|
|
|
# Put all the tests into a solution folder (MSVC):
|
|
set_target_properties(
|
|
StressEvent-exe
|
|
PROPERTIES FOLDER Tests/OSSupport
|
|
)
|
|
set_target_properties(
|
|
OSSupport
|
|
PROPERTIES FOLDER Lib
|
|
)
|
|
|
|
|
|
|
|
|