You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by jo...@apache.org on 2016/11/29 00:20:39 UTC
[10/23] mesos git commit: CMake: Added test sources to the build.
CMake: Added test sources to the build.
This adds most existing tests to the CMake build. This excludes
a few special cases, just as Java, Python, and network isolator
tests.
This review replaces: https://reviews.apache.org/r/49921/
Review: https://reviews.apache.org/r/53758/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/4c741df7
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/4c741df7
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/4c741df7
Branch: refs/heads/master
Commit: 4c741df7246220d85c6b4518c88abee4a74e1e9a
Parents: 33fc68d
Author: Srinivas Brahmaroutu <sr...@us.ibm.com>
Authored: Mon Nov 28 15:32:37 2016 -0800
Committer: Joseph Wu <jo...@apache.org>
Committed: Mon Nov 28 15:40:01 2016 -0800
----------------------------------------------------------------------
CMakeLists.txt | 3 +-
src/CMakeLists.txt | 1 +
src/tests/CMakeLists.txt | 169 ++++++++++++++++++++++++-
src/tests/cmake/MesosTestsConfigure.cmake | 9 ++
4 files changed, 179 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/4c741df7/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 80a541d..ba08260 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -111,5 +111,6 @@ add_subdirectory(src)
add_custom_target(
check ${STOUT_TESTS_TARGET}
COMMAND ${PROCESS_TESTS_TARGET}
- DEPENDS ${PROCESS_TESTS_TARGET} ${STOUT_TESTS_TARGET}
+ COMMAND ${MESOS_TESTS_TARGET}
+ DEPENDS ${STOUT_TESTS_TARGET} ${PROCESS_TESTS_TARGET} ${MESOS_TESTS_TARGET}
)
http://git-wip-us.apache.org/repos/asf/mesos/blob/4c741df7/src/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 88301bd..9799f98 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -297,6 +297,7 @@ set(SCHEDULER_SRC
set(STATE_SRC
${STATE_SRC}
state/in_memory.cpp
+ state/leveldb.cpp
state/log.cpp
)
http://git-wip-us.apache.org/repos/asf/mesos/blob/4c741df7/src/tests/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt
index a21a38d..44a9079 100644
--- a/src/tests/CMakeLists.txt
+++ b/src/tests/CMakeLists.txt
@@ -17,7 +17,8 @@
include(StoutTestsConfigure)
include(MesosTestsConfigure)
-######################
+# Sources for a test helper binary.
+###################################
set(TEST_HELPER_SRC
${TEST_HELPER_SRC}
active_user_test_helper.cpp
@@ -38,7 +39,164 @@ if (LINUX)
)
endif (LINUX)
-# TODO(hausdorff): Add the other tests here.
+# Test utilities.
+#################
+set(MESOS_TESTS_UTILS_SRC
+ ${MESOS_TESTS_UTILS_SRC}
+ active_user_test_helper.cpp
+ cluster.cpp
+ containerizer.cpp
+ environment.cpp
+ flags.cpp
+ health_check_test_helper.cpp
+ kill_policy_test_helper.cpp
+ main.cpp
+ mesos.cpp
+ mock_docker.cpp
+ mock_registrar.cpp
+ mock_slave.cpp
+ module.cpp
+ resources_utils.cpp
+ script.cpp
+ utils.cpp
+ containerizer/launcher.cpp
+ containerizer/memory_test_helper.cpp
+ )
+
+if (LINUX)
+ set(MESOS_TESTS_UTILS_SRC
+ ${MESOS_TESTS_UTILS_SRC}
+ containerizer/capabilities_test_helper.cpp
+ containerizer/setns_test_helper.cpp
+ )
+endif (LINUX)
+
+# All the test sources.
+#######################
+set(MESOS_TESTS_SRC
+ ${MESOS_TESTS_SRC}
+ ${MESOS_TESTS_UTILS_SRC}
+ anonymous_tests.cpp
+ api_tests.cpp
+ attributes_tests.cpp
+ authentication_tests.cpp
+ authorization_tests.cpp
+ command_executor_tests.cpp
+ container_logger_tests.cpp
+ cram_md5_authentication_tests.cpp
+ credentials_tests.cpp
+ default_executor_tests.cpp
+ disk_quota_tests.cpp
+ dynamic_weights_tests.cpp
+ examples_tests.cpp
+ exception_tests.cpp
+ executor_http_api_tests.cpp
+ fault_tolerance_tests.cpp
+ fetcher_cache_tests.cpp
+ fetcher_tests.cpp
+ files_tests.cpp
+ gc_tests.cpp
+ hdfs_tests.cpp
+ health_check_tests.cpp
+ hierarchical_allocator_tests.cpp
+ hook_tests.cpp
+ http_authentication_tests.cpp
+ http_fault_tolerance_tests.cpp
+ log_tests.cpp
+ logging_tests.cpp
+ master_allocator_tests.cpp
+ master_authorization_tests.cpp
+ master_contender_detector_tests.cpp
+ master_maintenance_tests.cpp
+ master_quota_tests.cpp
+ master_slave_reconciliation_tests.cpp
+ master_tests.cpp
+ master_validation_tests.cpp
+ metrics_tests.cpp
+ module_tests.cpp
+ oversubscription_tests.cpp
+ partition_tests.cpp
+ paths_tests.cpp
+ persistent_volume_endpoints_tests.cpp
+ persistent_volume_tests.cpp
+ protobuf_io_tests.cpp
+ rate_limiting_tests.cpp
+ reconciliation_tests.cpp
+ registrar_tests.cpp
+ reservation_endpoints_tests.cpp
+ reservation_tests.cpp
+ resource_offers_tests.cpp
+ resources_tests.cpp
+ role_tests.cpp
+ scheduler_driver_tests.cpp
+ scheduler_event_call_tests.cpp
+ scheduler_http_api_tests.cpp
+ scheduler_tests.cpp
+ slave_authorization_tests.cpp
+ slave_recovery_tests.cpp
+ slave_tests.cpp
+ slave_validation_tests.cpp
+ sorter_tests.cpp
+ state_tests.cpp
+ status_update_manager_tests.cpp
+ teardown_tests.cpp
+ uri_fetcher_tests.cpp
+ uri_tests.cpp
+ values_tests.cpp
+ zookeeper_url_tests.cpp
+ )
+
+set(MESOS_TESTS_SRC
+ ${MESOS_TESTS_SRC}
+ common/command_utils_tests.cpp
+ common/http_tests.cpp
+ common/recordio_tests.cpp
+ common/type_utils_tests.cpp
+ )
+
+set(MESOS_TESTS_SRC
+ ${MESOS_TESTS_SRC}
+ containerizer/appc_spec_tests.cpp
+ containerizer/composing_containerizer_tests.cpp
+ containerizer/cpu_isolator_tests.cpp
+ containerizer/docker_containerizer_tests.cpp
+ containerizer/docker_spec_tests.cpp
+ containerizer/docker_tests.cpp
+ containerizer/isolator_tests.cpp
+ containerizer/memory_isolator_tests.cpp
+ containerizer/mesos_containerizer_tests.cpp
+ containerizer/mesos_containerizer_paths_tests.cpp
+ containerizer/posix_rlimits_isolator_tests.cpp
+ containerizer/provisioner_appc_tests.cpp
+ containerizer/provisioner_backend_tests.cpp
+ containerizer/provisioner_docker_tests.cpp
+ containerizer/provisioner_paths_tests.cpp
+ containerizer/volume_image_isolator_tests.cpp
+ containerizer/volume_sandbox_path_isolator_tests.cpp
+ )
+
+if (LINUX)
+ set(MESOS_TESTS_SRC
+ ${MESOS_TESTS_SRC}
+ ldcache_tests.cpp
+ containerizer/capabilities_tests.cpp
+ containerizer/cgroups_isolator_tests.cpp
+ containerizer/cgroups_tests.cpp
+ containerizer/cni_isolator_tests.cpp
+ containerizer/docker_volume_isolator_tests.cpp
+ containerizer/fs_tests.cpp
+ containerizer/launch_tests.cpp
+ containerizer/linux_capabilities_isolator_tests.cpp
+ containerizer/linux_filesystem_isolator_tests.cpp
+ containerizer/memory_pressure_tests.cpp
+ containerizer/nested_mesos_containerizer_tests.cpp
+ containerizer/ns_tests.cpp
+ containerizer/nvidia_gpu_isolator_tests.cpp
+ containerizer/perf_tests.cpp
+ containerizer/runtime_isolator_tests.cpp
+ containerizer/sched_tests.cpp
+ )
+endif (LINUX)
# INCLUDE DIRECTIVES (generates, e.g., -I/path/to/thing on Linux).
##################################################################
@@ -50,12 +208,19 @@ link_directories(${MESOS_TESTS_LIB_DIRS})
# THE TEST AND HELPER EXECUTABLEs (generates, e.g., stout_tests, etc., on Linux).
#################################$###############################################
+add_executable(${MESOS_TESTS_TARGET} ${MESOS_TESTS_SRC})
add_executable(${TEST_HELPER_TARGET} ${TEST_HELPER_SRC})
# ADD LINKER FLAGS (generates, e.g., -lglog on Linux).
######################################################
+target_link_libraries(${MESOS_TESTS_TARGET} ${MESOS_TESTS_LIBS})
target_link_libraries(${TEST_HELPER_TARGET} ${MESOS_TESTS_LIBS})
# ADD BINARY DEPENDENCIES (tells CMake what to compile/build first).
####################################################################
+add_dependencies(${MESOS_TESTS_TARGET} ${MESOS_TESTS_DEPENDENCIES})
add_dependencies(${TEST_HELPER_TARGET} ${MESOS_TESTS_DEPENDENCIES})
+
+# ADD TEST TARGET (runs when you do, e.g., `make check`).
+#########################################################
+add_test(NAME MesosTests COMMAND ./${MESOS_TESTS_TARGET})
http://git-wip-us.apache.org/repos/asf/mesos/blob/4c741df7/src/tests/cmake/MesosTestsConfigure.cmake
----------------------------------------------------------------------
diff --git a/src/tests/cmake/MesosTestsConfigure.cmake b/src/tests/cmake/MesosTestsConfigure.cmake
index a931781..87dce5e 100644
--- a/src/tests/cmake/MesosTestsConfigure.cmake
+++ b/src/tests/cmake/MesosTestsConfigure.cmake
@@ -82,3 +82,12 @@ set(MESOS_TESTS_LIBS
${GMOCK_LFLAG}
${GTEST_LFLAG}
)
+
+if (NOT WIN32)
+ set(MESOS_TESTS_LIBS
+ ${MESOS_TESTS_LIBS}
+ ${QOS_CONTROLLER_TARGET}
+ ${RESOURCE_ESTIMATOR_TARGET}
+ ${LOGROTATE_CONTAINER_LOGGER_TARGET}
+ )
+endif (NOT WIN32)