SocketTest.cpp 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * Author: Patrick-Christopher Mattulat
  3. * Company: Lynar Studios
  4. * E-Mail: webmaster@lynarstudios.com
  5. * Created: 2020-11-16
  6. * Changed: 2022-12-10
  7. *
  8. * */
  9. #include <gtest/gtest.h>
  10. #include <ls_std/ls_std_network.hpp>
  11. using namespace ls::std::network;
  12. using namespace ::testing;
  13. using namespace ls_std_network_test;
  14. namespace
  15. {
  16. class SocketTest : public ::testing::Test
  17. {
  18. protected:
  19. SocketTest() = default;
  20. ~SocketTest() override = default;
  21. void SetUp() override
  22. {}
  23. void TearDown() override
  24. {}
  25. static SocketParameter generateSocketParameter()
  26. {
  27. SocketParameter socketParameter{};
  28. socketParameter.protocolFamilyType = ProtocolFamilyType::PROTOCOL_FAMILY_TYPE_IPV4;
  29. SocketAddress socketAddress{};
  30. socketAddress.protocolType = ProtocolType::PROTOCOL_TYPE_TCP;
  31. socketAddress.ipAddress = "127.0.0.1";
  32. socketAddress.port = 2220;
  33. socketParameter.socketAddress = socketAddress;
  34. return socketParameter;
  35. }
  36. };
  37. TEST_F(SocketTest, getClassName)
  38. {
  39. ASSERT_STREQ("Socket", Socket{generateSocketParameter()}.getClassName().c_str());
  40. }
  41. TEST_F(SocketTest, connect)
  42. {
  43. #if defined(unix) || defined(__APPLE__)
  44. MockPosixSocket mockPosixSocket{};
  45. EXPECT_CALL(mockPosixSocket, create(_, _, _)).Times(AtLeast(1));
  46. ON_CALL(mockPosixSocket, create(_, _, _)).WillByDefault(Return(0));
  47. EXPECT_CALL(mockPosixSocket, connect(_, _, _)).Times(AtLeast(1));
  48. ON_CALL(mockPosixSocket, connect(_, _, _)).WillByDefault(Return(0));
  49. #endif
  50. SocketParameter parameter = generateSocketParameter();
  51. parameter.mockSocketApi = true;
  52. Socket socket{parameter};
  53. ASSERT_TRUE(socket.connect());
  54. }
  55. TEST_F(SocketTest, isInitialized)
  56. {
  57. Socket socket{generateSocketParameter()};
  58. ASSERT_TRUE(socket.isInitialized());
  59. }
  60. }