aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/templates/wizards/autotest/files/tst.txt
diff options
context:
space:
mode:
Diffstat (limited to 'share/qtcreator/templates/wizards/autotest/files/tst.txt')
-rw-r--r--share/qtcreator/templates/wizards/autotest/files/tst.txt57
1 files changed, 57 insertions, 0 deletions
diff --git a/share/qtcreator/templates/wizards/autotest/files/tst.txt b/share/qtcreator/templates/wizards/autotest/files/tst.txt
new file mode 100644
index 0000000000..8c13344d41
--- /dev/null
+++ b/share/qtcreator/templates/wizards/autotest/files/tst.txt
@@ -0,0 +1,57 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 3.1)
+
+PROJECT(%{TestCaseName}
+ LANGUAGES CXX)
+
+@if "%{TestFrameWork}" == "QtTest"
+
+find_package(Qt5Test REQUIRED)
+@if "%{RequireGUI}" == "true"
+find_package(Qt5Gui REQUIRED)
+@endif
+
+SET(CMAKE_AUTOMOC ON)
+SET(CMAKE_INCLUDE_CURRENT_DIR ON)
+SET(CMAKE_CXX_STANDARD 11)
+ENABLE_TESTING()
+
+add_executable(${PROJECT_NAME} %{TestCaseFileWithCppSuffix})
+add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
+
+@if "%{RequireGUI}" == "true"
+target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Gui Qt5::Test)
+@else
+target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Test)
+@endif
+
+@else
+
+@if "%{GTestCXX11}" == "true"
+add_definitions(-DGTEST_LANGUAGE_CXX11)
+@endif
+
+find_package(Threads REQUIRED)
+
+if ($ENV{GOOGLETEST_DIR})
+ SET(GOOGLETEST_DIR $ENV{GOOGLETEST_DIR})
+else ()
+ message(WARNING "Using googletest src dir specified at Qt Creator wizard")
+ SET(GOOGLETEST_DIR "%{GTestRepository}")
+endif ()
+if (EXISTS ${GOOGLETEST_DIR})
+ SET(GTestSrc ${GOOGLETEST_DIR}/googletest)
+ SET(GMockSrc ${GOOGLETEST_DIR}/googlemock)
+else ()
+ message( FATAL_ERROR "No googletest src dir found - set GOOGLETEST_DIR to enable!")
+endif ()
+
+
+include_directories(${GTestSrc} ${GTestSrc}/include ${GMockSrc} ${GMockSrc}/include)
+
+add_executable(${PROJECT_NAME} %{MainCppName} %{TestCaseFileWithHeaderSuffix}
+ ${GTestSrc}/src/gtest-all.cc
+ ${GMockSrc}/src/gmock-all.cc)
+add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
+target_link_libraries(${PROJECT_NAME} PRIVATE Threads::Threads)
+
+@endif