From 43c045f342168d0794dc3c10fcc03c47bfced242 Mon Sep 17 00:00:00 2001 From: Paul Hariel Date: Thu, 28 Sep 2023 17:40:35 +0200 Subject: [PATCH] Add server integration tests --- tests/integration/CMakeLists.txt | 4 ++- tests/integration/integration_tests.cpp | 34 +++++++++++++++++++ .../integration/server_integration_tests.cpp | 3 -- 3 files changed, 37 insertions(+), 4 deletions(-) delete mode 100644 tests/integration/server_integration_tests.cpp diff --git a/tests/integration/CMakeLists.txt b/tests/integration/CMakeLists.txt index f5d8b04..4eb3d86 100644 --- a/tests/integration/CMakeLists.txt +++ b/tests/integration/CMakeLists.txt @@ -8,8 +8,10 @@ add_executable( ${SOURCES} ) -target_link_libraries(integration_tests PRIVATE shared) +target_link_libraries(integration_tests PRIVATE asio) +target_link_libraries(integration_tests PRIVATE client) target_link_libraries(integration_tests PRIVATE server) +target_link_libraries(integration_tests PRIVATE shared) target_link_libraries(integration_tests PRIVATE GTest::gtest GTest::gtest_main GTest::gmock GTest::gmock_main) gtest_discover_tests(integration_tests) \ No newline at end of file diff --git a/tests/integration/integration_tests.cpp b/tests/integration/integration_tests.cpp index 8f26102..fd4e947 100644 --- a/tests/integration/integration_tests.cpp +++ b/tests/integration/integration_tests.cpp @@ -1,7 +1,41 @@ +#include + +#include +#include +#include #include +#include int main(int argc, char** argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); +} + +TEST(integration_tests, connect_client_to_server) +{ + asio::io_context io_context; + + std::jthread server_thread([&]() + { + pine::server server(io_context); + + server.on_connection_attempt([](auto& server, auto& client) -> async_task + { + server.stop(); + SUCCEED(); + co_return; + }); + + server.listen(); + + FAIL(); + }); + + pine::client client("test", io_context); + + if(!client.connect()) + FAIL(); + + client.disconnect(); } \ No newline at end of file diff --git a/tests/integration/server_integration_tests.cpp b/tests/integration/server_integration_tests.cpp deleted file mode 100644 index d045203..0000000 --- a/tests/integration/server_integration_tests.cpp +++ /dev/null @@ -1,3 +0,0 @@ -#include - -#include \ No newline at end of file