diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt new file mode 100644 index 00000000..0f5da657 --- /dev/null +++ b/cpp/CMakeLists.txt @@ -0,0 +1,25 @@ +cmake_minimum_required(VERSION 3.13) + +set(LINKS_PLATFORM_TESTS OFF CACHE BOOL "Whether to compile tests") +set(LINKS_PLATFORM_EXTRA_FLAGS "" CACHE STRING "Extra compiler flags") + +set(CONAN_DISABLE_CHECK_COMPILER TRUE) +set(LINKS_PLATFORM_TESTS TRUE) + +project(Platform.Bot CXX) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) + +find_package(GTest) + +add_library(${PROJECT_NAME}.Library INTERFACE) +target_include_directories(${PROJECT_NAME}.Library INTERFACE ${PROJECT_NAME}) + +target_compile_options(${PROJECT_NAME}.Library INTERFACE ${LINKS_PLATFORM_EXTRA_FLAGS}) + +if(${LINKS_PLATFORM_TESTS}) + add_executable(${PROJECT_NAME}.Tests ${PROJECT_NAME}.Tests/${PROJECT_NAME}.Tests.cpp) + set_target_properties(${PROJECT_NAME}.Tests PROPERTIES CXX_STANDARD 20) + target_link_libraries(${PROJECT_NAME}.Tests PRIVATE GTest::gtest) + target_link_libraries(${PROJECT_NAME}.Tests PRIVATE GTest::gtest_main) + target_link_libraries(${PROJECT_NAME}.Tests PRIVATE ${PROJECT_NAME}.Library) +endif() \ No newline at end of file diff --git a/cpp/Platform.Bot.Tests/Platform.Bot.Tests.cpp b/cpp/Platform.Bot.Tests/Platform.Bot.Tests.cpp new file mode 100644 index 00000000..7747e2f5 --- /dev/null +++ b/cpp/Platform.Bot.Tests/Platform.Bot.Tests.cpp @@ -0,0 +1,15 @@ +#include + +namespace Platform::Bot::Tests +{ + TEST(BotTests, BasicTest) + { + EXPECT_TRUE(true); + } +} + +int main(int argc, char **argv) +{ + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} \ No newline at end of file