diff options
Diffstat (limited to 'share/qtcreator/templates/wizards/autotest/files/tst.txt')
-rw-r--r-- | share/qtcreator/templates/wizards/autotest/files/tst.txt | 57 |
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 |