summaryrefslogtreecommitdiffstats
path: root/src/spawn/test/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/spawn/test/CMakeLists.txt')
-rw-r--r--src/spawn/test/CMakeLists.txt29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/spawn/test/CMakeLists.txt b/src/spawn/test/CMakeLists.txt
new file mode 100644
index 000000000..a6ef136da
--- /dev/null
+++ b/src/spawn/test/CMakeLists.txt
@@ -0,0 +1,29 @@
+add_subdirectory(dependency)
+
+add_library(test_base INTERFACE)
+target_link_libraries(test_base INTERFACE gtest_main)
+
+# all warnings as errors
+if(MSVC)
+ target_compile_options(test_base INTERFACE /W4 /WX)
+else(MSVC)
+ target_compile_options(test_base INTERFACE -Wall -Wextra -Werror)
+endif(MSVC)
+
+if(SPAWN_TEST_ADDRESS_SANITIZER)
+ # add address sanitizier
+ target_compile_options(test_base INTERFACE "-fsanitize=address")
+ target_link_libraries(test_base INTERFACE "-fsanitize=address")
+endif()
+
+add_executable(test_async_result test_async_result.cc)
+target_link_libraries(test_async_result test_base spawn)
+add_test(test_async_result test_async_result)
+
+add_executable(test_spawn test_spawn.cc)
+target_link_libraries(test_spawn test_base spawn)
+add_test(test_spawn test_spawn)
+
+add_executable(test_exception test_exception.cc)
+target_link_libraries(test_exception test_base spawn)
+add_test(test_exception test_exception)