Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/tests
diff options
context:
space:
mode:
authorRobert Adam <dev@robert-adam.de>2020-09-08 17:16:43 +0300
committerRobert Adam <dev@robert-adam.de>2020-09-11 10:16:34 +0300
commit26c30a11fee2f91ec8b31a36978a20e3e67ccafb (patch)
treed2c20a2bc4b40d2d1218bf5df5c87aebb8f2b63e /src/tests
parent0ba1eac51b5f4443e6fbb1bc3e157403903e9a01 (diff)
BUILD(cmake): Select tests based on built components
As some tests only make sense to be run if a given component is included in the build (client/server), this commit makes sure no unnecessary tests are built (and run). Furthermore it removed the dependency of some tests on a certain target having a source-dir property. And finally it also removed the references to "NO_USE_SRV" from TestServerResolver as this macro is never defined anywhere (it's probably a remnant of the old qmake system). Co-Authored-By: Sebastian Parborg <darkdefende@gmail.com>
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/CMakeLists.txt38
-rw-r--r--src/tests/TestCrypt/CMakeLists.txt4
-rw-r--r--src/tests/TestServerResolver/TestServerResolver.cpp8
-rw-r--r--src/tests/TestXMLTools/CMakeLists.txt2
4 files changed, 34 insertions, 18 deletions
diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt
index bdfd06903..685ccb449 100644
--- a/src/tests/CMakeLists.txt
+++ b/src/tests/CMakeLists.txt
@@ -5,11 +5,37 @@
find_pkg(Qt5 COMPONENTS Test REQUIRED)
-file(GLOB ITEMS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*")
+set(TESTS "")
-foreach(ITEM ${ITEMS})
- if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${ITEM}")
- add_subdirectory(${ITEM})
- set_target_properties(${ITEM} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/tests")
- endif()
+macro(use_test TEST_NAME)
+ add_subdirectory("${TEST_NAME}")
+ list(APPEND TESTS "${TEST_NAME}")
+endmacro()
+
+if(client)
+ use_test("TestXMLTools")
+endif()
+
+if(server)
+ use_test("TestCrypt")
+endif()
+
+# Shared tests
+use_test("TestCryptographicHash")
+use_test("TestCryptographicRandom")
+use_test("TestFFDHE")
+use_test("TestPacketDataStream")
+use_test("TestPasswordGenerator")
+use_test("TestSelfSignedCertificate")
+use_test("TestServerAddress")
+use_test("TestServerResolver")
+use_test("TestSSLLocks")
+use_test("TestStdAbs")
+use_test("TestTimer")
+use_test("TestUnresolvedServerAddress")
+
+
+# Set output directory
+foreach(CURRENT_TEST IN LISTS TESTS)
+ set_target_properties("${CURRENT_TEST}" PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/tests")
endforeach()
diff --git a/src/tests/TestCrypt/CMakeLists.txt b/src/tests/TestCrypt/CMakeLists.txt
index 302e8a262..1500ae22f 100644
--- a/src/tests/TestCrypt/CMakeLists.txt
+++ b/src/tests/TestCrypt/CMakeLists.txt
@@ -7,9 +7,7 @@ add_executable(TestCrypt TestCrypt.cpp)
set_target_properties(TestCrypt PROPERTIES AUTOMOC ON)
-get_target_property(MURMUR_SOURCE_DIR murmur SOURCE_DIR)
-
-target_include_directories(TestCrypt PRIVATE ${MURMUR_SOURCE_DIR})
+target_include_directories(TestCrypt PRIVATE "${CMAKE_SOURCE_DIR}/src/murmur")
target_link_libraries(TestCrypt PRIVATE shared Qt5::Test)
diff --git a/src/tests/TestServerResolver/TestServerResolver.cpp b/src/tests/TestServerResolver/TestServerResolver.cpp
index 786792080..cd2fbff3e 100644
--- a/src/tests/TestServerResolver/TestServerResolver.cpp
+++ b/src/tests/TestServerResolver/TestServerResolver.cpp
@@ -27,10 +27,6 @@ class TestServerResolver : public QObject {
};
void TestServerResolver::simpleSrv() {
-#ifdef USE_NO_SRV
- return;
-#endif
-
// Qt 5's SRV resolver does not work in Wine.
// For more info, see https://bugs.winehq.org/show_bug.cgi?id=44296
if (PlatformCheck::IsWine()) {
@@ -80,10 +76,6 @@ void TestServerResolver::simpleSrv() {
}
void TestServerResolver::srvCustomPort() {
-#ifdef USE_NO_SRV
- return;
-#endif
-
// Qt 5's SRV resolver does not work in Wine.
// For more info, see https://bugs.winehq.org/show_bug.cgi?id=44296
if (PlatformCheck::IsWine()) {
diff --git a/src/tests/TestXMLTools/CMakeLists.txt b/src/tests/TestXMLTools/CMakeLists.txt
index 0290f9b5f..0eb8aac12 100644
--- a/src/tests/TestXMLTools/CMakeLists.txt
+++ b/src/tests/TestXMLTools/CMakeLists.txt
@@ -3,7 +3,7 @@
# that can be found in the LICENSE file at the root of the
# Mumble source tree or at <https://www.mumble.info/LICENSE>.
-get_target_property(MUMBLE_SOURCE_DIR mumble SOURCE_DIR)
+set(MUMBLE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/src/mumble")
set(TESTXMLTOOLS_SOURCES
TestXMLTools.cpp