Skip to content

Commit e518ab6

Browse files
authored
Enable/Disable auto run unit tests after building the target (#166)
Support for enable/disable auto run unit tests after building the targets If CROSSCOMPILING, set AUTORUN_UNIT_TESTS to be OFF
1 parent 4c40b7d commit e518ab6

File tree

5 files changed

+33
-9
lines changed

5 files changed

+33
-9
lines changed

CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ option(NO_ENCRYPTION "If enabled, no platform-default encryption will be include
4949
option(USE_IXML_HTTP_REQUEST_2 "If enabled on windows, the com object IXmlHttpRequest2 will be used for the http stack" OFF)
5050
option(ENABLE_RTTI "Flag to enable/disable rtti within the library" ON)
5151
option(ENABLE_TESTING "Flag to enable/disable building unit and integration tests" ON)
52+
option(AUTORUN_UNIT_TESTS "Flag to enable/disable automatically run unit tests after building" ON)
5253
option(ANDROID_BUILD_CURL "When building for Android, should curl be built as well" ON)
5354
option(ANDROID_BUILD_OPENSSL "When building for Android, should Openssl be built as well" ON)
5455
option(ANDROID_BUILD_ZLIB "When building for Android, should Zlib be built as well" ON)
@@ -87,6 +88,10 @@ if(COMMAND apply_pre_project_platform_settings)
8788
apply_pre_project_platform_settings()
8889
endif()
8990

91+
if (CROSSCOMPILING)
92+
set(AUTORUN_UNIT_TESTS OFF)
93+
endif()
94+
9095
include(initialize_project_version)
9196

9297
if(POLICY CMP0028)

aws-cpp-sdk-core-tests/CMakeLists.txt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ if(PLATFORM_CUSTOM)
5757
endif()
5858
endif()
5959

60-
enable_testing()
60+
if (AUTORUN_UNIT_TESTS)
61+
enable_testing()
62+
endif()
6163

6264
if(USE_WINDOWS_DLL_SEMANTICS AND BUILD_SHARED_LIBS)
6365
add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1)
@@ -78,7 +80,11 @@ add_custom_command(TARGET aws-cpp-sdk-core-tests PRE_BUILD
7880
${CMAKE_CURRENT_SOURCE_DIR}/resources ${CMAKE_CURRENT_BINARY_DIR})
7981

8082
if(NOT CMAKE_CROSSCOMPILING)
81-
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
8283
SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
8384
endif()
8485

86+
if (AUTORUN_UNIT_TESTS)
87+
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
88+
endif()
89+
90+

aws-cpp-sdk-identity-management-tests/CMakeLists.txt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ if(PLATFORM_WINDOWS)
2121
endif()
2222
endif()
2323

24-
enable_testing()
24+
if (AUTORUN_UNIT_TESTS)
25+
enable_testing()
26+
endif()
2527

2628
if(PLATFORM_WINDOWS AND MSVC AND BUILD_SHARED_LIBS)
2729
add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1)
@@ -37,8 +39,9 @@ target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS})
3739
copyDlls(${PROJECT_NAME} ${PROJECT_LIBS})
3840

3941
if(NOT CMAKE_CROSSCOMPILING)
40-
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
4142
SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
4243
endif()
4344

44-
45+
if (AUTORUN_UNIT_TESTS)
46+
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
47+
endif()

aws-cpp-sdk-s3-encryption-tests/CMakeLists.txt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ if(MSVC AND BUILD_SHARED_LIBS)
2727
add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1)
2828
endif()
2929

30-
enable_testing()
30+
if (AUTORUN_UNIT_TESTS)
31+
enable_testing()
32+
endif()
3133

3234
if(PLATFORM_ANDROID AND BUILD_SHARED_LIBS)
3335
add_library(aws-cpp-sdk-s3-encryption-tests ${LIBTYPE} ${S3ENCRYPTION_TEST_SRC})
@@ -39,6 +41,9 @@ target_link_libraries(aws-cpp-sdk-s3-encryption-tests ${PROJECT_LIBS})
3941
copyDlls(aws-cpp-sdk-s3-encryption-tests ${PROJECT_LIBS})
4042

4143
if(NOT CMAKE_CROSSCOMPILING)
42-
ADD_CUSTOM_COMMAND( TARGET aws-cpp-sdk-s3-encryption-tests POST_BUILD COMMAND $<TARGET_FILE:aws-cpp-sdk-s3-encryption-tests>)
4344
SET_TARGET_PROPERTIES(aws-cpp-sdk-s3-encryption-tests PROPERTIES OUTPUT_NAME aws-cpp-sdk-s3-encryption-tests)
4445
endif()
46+
47+
if (AUTORUN_UNIT_TESTS)
48+
ADD_CUSTOM_COMMAND( TARGET aws-cpp-sdk-s3-encryption-tests POST_BUILD COMMAND $<TARGET_FILE:aws-cpp-sdk-s3-encryption-tests>)
49+
endif()

aws-cpp-sdk-text-to-speech-tests/CMakeLists.txt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ if(MSVC AND BUILD_SHARED_LIBS)
1616
add_definitions(-DGTEST_LINKED_AS_SHARED_LIBRARY=1)
1717
endif()
1818

19-
enable_testing()
19+
if (AUTORUN_UNIT_TESTS)
20+
enable_testing()
21+
endif()
2022

2123
if(PLATFORM_ANDROID AND BUILD_SHARED_LIBS)
2224
add_library(${PROJECT_NAME} ${LIBTYPE} ${TEXT_TO_SPEECH_TEST_SRC})
@@ -28,6 +30,9 @@ target_link_libraries(${PROJECT_NAME} ${PROJECT_LIBS})
2830
copyDlls(${PROJECT_NAME} ${PROJECT_LIBS})
2931

3032
if(NOT CMAKE_CROSSCOMPILING)
31-
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
3233
SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
3334
endif()
35+
36+
if (AUTORUN_UNIT_TESTS)
37+
ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND $<TARGET_FILE:${PROJECT_NAME}>)
38+
endif()

0 commit comments

Comments
 (0)