Skip to content

Commit edbac19

Browse files
committed
Changed the SSL loopback test to test the send/receive of 1 Mbytes of random data.
1 parent 01a4df7 commit edbac19

File tree

1 file changed

+17
-23
lines changed

1 file changed

+17
-23
lines changed

SocketTest/Tests.cpp

Lines changed: 17 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -332,8 +332,13 @@ TEST_F(SSLTCPTest, TestLoopback)
332332
{
333333
if (SECURE_TCP_TEST_ENABLED)
334334
{
335-
const std::string strSendData = "Hello World !";
336-
char szRcvBuffer[14] = {};
335+
srand(static_cast<unsigned>(time(nullptr)));
336+
337+
const size_t oneMeg = 1024*1024;
338+
std::vector<char> OneMbData(oneMeg);
339+
std::vector<char> RcvBuffer(oneMeg);
340+
std::generate (OneMbData.begin(), OneMbData.end(), []{ return (std::rand() % 256); });
341+
337342
ASecureSocket::SSLSocket ConnectedClient;
338343

339344
ASSERT_NO_THROW(m_pSSLTCPServer.reset(new CTCPSSLServer(PRINT_LOG, SECURE_TCP_SERVER_PORT)));
@@ -389,29 +394,18 @@ TEST_F(SSLTCPTest, TestLoopback)
389394
ASSERT_FALSE(ConnectedClient.m_pSSL == nullptr);
390395
ASSERT_FALSE(ConnectedClient.m_pCTXSSL == nullptr);
391396
ASSERT_FALSE(ConnectedClient.m_SockFd == INVALID_SOCKET);
397+
398+
// server -> client
399+
EXPECT_TRUE(m_pSSLTCPServer->Send(ConnectedClient, OneMbData));
400+
EXPECT_GT(m_pSSLTCPClient->Receive(RcvBuffer.data(), oneMeg), 0);
401+
EXPECT_TRUE(std::equal(OneMbData.begin(), OneMbData.end(), RcvBuffer.begin()));
392402

393-
// perform 3 checks
394-
// client side
395-
// send period between 50 and 999 ms
396-
srand(static_cast<unsigned>(time(nullptr)));
397-
unsigned iPeriod = 50 + (rand() % (999 - 50));
398-
unsigned uCount = 0;
399-
while (uCount++ < 3)
400-
{
401-
// server -> client
402-
EXPECT_TRUE(m_pSSLTCPServer->Send(ConnectedClient, strSendData));
403-
EXPECT_GT(m_pSSLTCPClient->Receive(szRcvBuffer, 13), 0);
404-
EXPECT_EQ(strSendData, szRcvBuffer);
405-
memset(szRcvBuffer, '\0', 14);
406-
407-
// client -> server
408-
EXPECT_TRUE(m_pSSLTCPClient->Send(strSendData));
409-
EXPECT_GT(m_pSSLTCPServer->Receive(ConnectedClient, szRcvBuffer, 13), 0);
410-
EXPECT_EQ(strSendData, szRcvBuffer);
411-
memset(szRcvBuffer, '\0', 14);
403+
std::fill(RcvBuffer.begin(), RcvBuffer.end(), 0);
412404

413-
SleepMs(iPeriod);
414-
}
405+
// client -> server
406+
EXPECT_TRUE(m_pSSLTCPClient->Send(OneMbData));
407+
EXPECT_GT(m_pSSLTCPServer->Receive(ConnectedClient, RcvBuffer.data(), oneMeg), 0);
408+
EXPECT_TRUE(std::equal(OneMbData.begin(), OneMbData.end(), RcvBuffer.begin()));
415409

416410
// disconnect
417411
EXPECT_TRUE(m_pSSLTCPClient->Disconnect());

0 commit comments

Comments
 (0)