CMakeLists.txt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. cmake_minimum_required(VERSION 2.8.2)
  2. set(CMAKE_CXX_STANDARD 11)
  3. include(CTest)
  4. if (CMAKE_VERSION VERSION_LESS 3.2)
  5. set(UPDATE_DISCONNECTED_IF_AVAILABLE "")
  6. else()
  7. set(UPDATE_DISCONNECTED_IF_AVAILABLE "UPDATE_DISCONNECTED 1")
  8. endif()
  9. include(DownloadProject.cmake)
  10. download_project(PROJ googletest
  11. PREFIX CMAKE_SOURCE_DIR/test/googletest
  12. GIT_REPOSITORY https://github.com/google/googletest.git
  13. GIT_TAG master
  14. ${UPDATE_DISCONNECTED_IF_AVAILABLE}
  15. )
  16. # Prevent GoogleTest from overriding our compiler/linker options
  17. # when building with Visual Studio
  18. set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
  19. add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR})
  20. # When using CMake 2.8.11 or later, header path dependencies
  21. # are automatically added to the gtest and gmock targets.
  22. # For earlier CMake versions, we have to explicitly add the
  23. # required directories to the header search path ourselves.
  24. if (CMAKE_VERSION VERSION_LESS 2.8.11)
  25. include_directories("${gtest_SOURCE_DIR}/include"
  26. "${gmock_SOURCE_DIR}/include")
  27. endif()
  28. include_directories("../../core/include/")
  29. add_executable(core_ut
  30. alibabacloud_ut.cc
  31. asynccallercontext_ut.cc
  32. clientconfiguration_ut.cc
  33. commonclient_ut.cc
  34. commonrequest_ut.cc
  35. commonresponse_ut.cc
  36. credentials_ut.cc
  37. curlhttpclient_ut.cc
  38. ecsmetadatafetcher_ut.cc
  39. endpointprovider_ut.cc
  40. error_ut.cc
  41. executor_ut.cc
  42. httprequest_ut.cc
  43. httpresponse_ut.cc
  44. httpmessage_ut.cc
  45. hmacsha1signer_ut.cc
  46. networkproxy_ut.cc
  47. roaserviceclient_ut.cc
  48. roaservicerequest_ut.cc
  49. rpcserviceclient_ut.cc
  50. rpcservicerequest_ut.cc
  51. runnable_ut.cc
  52. serviceresult_ut.cc
  53. servicerequest_ut.cc
  54. simplecredentialsprovider_ut.cc
  55. url_ut.cc
  56. utils_ut.cc
  57. instanceprofilecredentialsprovider_ut.cc
  58. locationclient_ut.cc
  59. location_model_describeendpoints_request_ut.cc
  60. location_model_describeendpoints_result_ut.cc
  61. stsclient_ut.cc
  62. stsassumerolecredentialsprovider_ut.cc
  63. sts_model_assumerole_request_ut.cc
  64. sts_model_assumerole_result_ut.cc
  65. sts_model_getcalleridentity_request_ut.cc
  66. sts_model_getcalleridentity_result_ut.cc
  67. )
  68. set_target_properties(core_ut
  69. PROPERTIES
  70. OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}core_ut
  71. RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
  72. target_link_libraries(core_ut core gtest gmock_main)
  73. add_test(NAME core_ut COMMAND core_ut)