19 bool checkValue<DataStreamType>(
const std::string & testName,
const std::vector<DataStreamType> & vecData,
const std::vector<DataStreamType> & vecReferenceData){
20 if(vecData.size() != vecReferenceData.size()){
21 std::cout <<
"checkValue<DataStreamType> : "<<testName<<
" => vecData.size(" << vecData.size() <<
") != vecReferenceData.size("<<vecReferenceData.size()<<
")" << std::endl;
25 for(
size_t i(0lu); i < vecData.size() && b; ++i){
26 b &= vecData[i] == vecReferenceData[i];
28 std::cout <<
"checkValue<DataStreamType> : "<<testName<<
" => vecData["<<i<<
"](" << (int)vecData[i] <<
") != vecReferenceData["<<i<<
"]("<<(
int)vecReferenceData[i]<<
")" << std::endl;
76 std::stringstream socketFileName;
80 socketFileName << param.
address <<
"_" << param.
port <<
".pmockbackend";
86 std::cerr <<
"PMockBackend::createClientSocket : cannot load file '"<<socket.
fileNameMessage<<
"'" << std::endl;
113 std::cerr <<
"PMockBackend::send : empty vector of message" << std::endl;
121 std::stringstream strEvent;
140 std::cerr <<
"PMockBackend::recv : empty vector of message" << std::endl;
208 mockMsg.resize(dataSize);
217 size_t dataSize(mockMsg.size());
bool checkValue< DataStreamType >(const std::string &testName, const std::vector< DataStreamType > &vecData, const std::vector< DataStreamType > &vecReferenceData)
Check given value compare to the reference size.
static void msgToMock(DataStreamMsg &mockMsg, const Message &msg)
Copy current backend message data into mock message.
static bool createClientSocket(Socket &socket, const PMockParam ¶m)
Create a client socket.
static const DataStreamIter msgData(const Message &msg)
Get the data of a message.
static Param client(const std::string &address, size_t port, bool isMockRecord, const std::string &mockDirectory)
Create param for a client socket.
static bool send(Socket &socket, const Message &msg, PSendFlag::PSendFlag flag)
Send message on the given socket.
PMockBackend()
Default constructor of PMockBackend.
static void msgResize(Message &msg, size_t sizeMsg)
Resize a message.
static bool isConnected(const Socket &socket)
Say if the given socket is connected.
static bool createServerSocket(Socket &socket, const PMockParam ¶m)
Create a client socket.
static void mockToMsg(Message &msg, DataStreamMsg &mockMsg)
Copy mock message data into current backend message.
static bool recv(Socket &socket, Message &msg, PRecvFlag::PRecvFlag flag)
Recieve message from the given socket.
static void close(Socket &socket)
Close the given socket.
static Param server(const std::string &address, size_t port, bool isMockRecord, const std::string &mockDirectory)
Create param for a server socket.
static size_t msgSize(const Message &msg)
Get the size of a message.
DataStreamMsg Message
Define the type of message used by the PAbstractSocketManager.
bool data_load(FILE *iter, T &data)
Load data from a message.
bool data_save(FILE *iter, const T &data)
Save data in a message.
bool checkValue(const std::string &testName, const T &givenSize, const T &referenceSize)
Check given value compare to the reference value.
std::vector< DataStreamType > DataStreamMsg
DataStreamType * DataStreamIter
PRecvFlag
describe the recieving flag of the Socket
PSendFlag
describe the sending flag of the Socket
Set of parameters to be passed to create a socket with mock backend.
size_t port
Connection port.
std::string address
Host address.
std::string mockDirectory
Directory where to find/save mock files.
bool isMockRecord
True to record the activity of the backend durring real use to make reusable mock.
Data to be used to handle the mock socket.
PMockParam param
Parameters of the mock.
std::string fileNameMessage
Name of the file to read messages.
PVecMockMessage vecMessage
Vector of messages.
size_t eventIndex
Index of the current message.