Unverified Commit 3d7c3303 authored by Chao Ma's avatar Chao Ma Committed by GitHub
Browse files

Add unittest for C++ RPC (#566)

parent 7bdc1619
......@@ -96,7 +96,7 @@ class SocketSender : public Sender {
/*!
* \brief data buffer
*/
char* buffer_;
char* buffer_ = nullptr;
};
/*!
......@@ -174,7 +174,7 @@ class SocketReceiver : public Receiver {
/*!
* \brief data buffer
*/
char* buffer_;
char* buffer_ = nullptr;
/*!
* \brief Process received message in independent threads
......
/*!
* Copyright (c) 2019 by Contributors
* \file msg_queue.cc
* \brief Message queue for DGL distributed training.
*/
#include <gtest/gtest.h>
#include <string.h>
#include <unistd.h>
#include <string>
#include "../src/graph/network/socket_communicator.h"
using std::string;
using dgl::network::SocketSender;
using dgl::network::SocketReceiver;
TEST(SocketCommunicatorTest, SendAndRecv) {
int pid = fork();
const char * msg = "0123456789";
ASSERT_GE(pid, 0);
if (pid > 0) { // parent: server
char serbuff[10];
memset(serbuff, '\0', 10);
SocketReceiver receiver;
receiver.Wait("127.0.0.1", 50051, 1, 500);
receiver.Recv(serbuff, 10);
ASSERT_EQ(string("0123456789"), string(serbuff, 10));
receiver.Finalize();
} else { // child: client
sleep(1);
SocketSender sender;
sender.AddReceiver("127.0.0.1", 50051, 0);
sender.Connect();
sender.Send(msg, 10, 0);
sender.Finalize();
}
}
\ No newline at end of file
......@@ -75,7 +75,7 @@ TEST(TCPSocket, SendRecieve) {
sent_bytes += tmp;
}
} else { // child: client
sleep(3); // wait for server
sleep(1); // wait for server
TCPSocket client;
ASSERT_TRUE(client.Connect("127.0.0.1", 2049));
char clibuff[10];
......@@ -124,5 +124,4 @@ TEST(TCPSocket, SendRecieve) {
ASSERT_EQ(bigbuff[i], 'x');
}
}
wait(0);
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment