aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/CMakeLists.txt16
1 files changed, 12 insertions, 4 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 65cd486..332da12 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,6 +1,6 @@
enable_testing()
-foreach(test IN ITEMS
+set(TEST_LIST
test_base64
test_crypto
test_group_session
@@ -12,11 +12,20 @@ foreach(test IN ITEMS
test_olm_sha256
test_olm_signature
test_olm_using_malloc
- test_ratchet
test_session
test_pk
test_sas
- )
+ )
+
+if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Windows" AND BUILD_SHARED_LIBS))
+ # test_ratchet doesn't work on Windows when building a DLL, because it tries
+ # to use internal symbols, so only enable it if we're not on Windows, or if
+ # we're building statically
+ set(TEST_LIST ${TEST_LIST} test_ratchet)
+ add_test(Ratchet test_ratchet)
+endif()
+
+foreach(test IN ITEMS ${TEST_LIST})
add_executable(${test} ${test}.cpp)
target_include_directories(${test} PRIVATE include)
target_link_libraries(${test} Olm::Olm)
@@ -33,7 +42,6 @@ add_test(OlmDecrypt test_olm_decrypt)
add_test(OlmSha256 test_olm_sha256)
add_test(OlmSignature test_olm_signature)
add_test(OlmUsingMalloc test_olm_using_malloc)
-add_test(Ratchet test_ratchet)
add_test(Session test_session)
add_test(PublicKey test_session)
add_test(SAS test_sas)