TEST(QiOs, free_port_multiple_connection) { int sock1; unsigned short port1 = qi::os::findAvailablePort(9559); ASSERT_GT(port1, 0); int success1 = freeportbind(port1, sock1); int sock2; unsigned short port2 = qi::os::findAvailablePort(9559); ASSERT_GT(port2, 0); int success2 = freeportbind(port2, sock2); int sock3; unsigned short port3 = qi::os::findAvailablePort(9559); ASSERT_GT(port3, 0); int success3 = freeportbind(port3, sock3); if (success1 == -1) EXPECT_TRUE(false); else #ifndef _WIN32 ::close(sock1); #else ::closesocket(sock1); #endif if (success2 == -1) EXPECT_TRUE(false); else #ifndef _WIN32 ::close(sock2); #else ::closesocket(sock2); #endif if (success3 == -1) EXPECT_TRUE(false); else #ifndef _WIN32 ::close(sock3); #else ::closesocket(sock3); #endif EXPECT_TRUE(true); }
TEST(QiOs, free_port) { int sock; unsigned short port = qi::os::findAvailablePort(9559); int success = freeportbind(port, sock); if (success == -1) EXPECT_TRUE(false); else #ifndef _WIN32 ::close(sock); #else ::closesocket(sock); #endif EXPECT_TRUE(true); }