From 67aa788577fb49474dd7329b14316d25f1b3c08b Mon Sep 17 00:00:00 2001 From: Guido Goldstein Date: Sat, 28 Aug 2010 06:31:40 +0200 Subject: Fixed socket states in tests --- tests/test_pair.cpp | 3 +++ tests/test_reqrep.cpp | 3 +++ tests/testutil.hpp | 6 +++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/test_pair.cpp b/tests/test_pair.cpp index 01ea5b0..381874f 100644 --- a/tests/test_pair.cpp +++ b/tests/test_pair.cpp @@ -39,6 +39,9 @@ int main () { const string returned = zmqtestutil::ping_pong (p, expect); assert (expect == returned); + // Adjust socket state so that poll shows only 1 pending message. + zmq::message_t mx ; + p.first->recv(&mx, 0); } { diff --git a/tests/test_reqrep.cpp b/tests/test_reqrep.cpp index 7fa976e..f33b4b5 100644 --- a/tests/test_reqrep.cpp +++ b/tests/test_reqrep.cpp @@ -39,6 +39,9 @@ int main() { const string returned = zmqtestutil::ping_pong (p, expect); assert (expect == returned); + // Adjust socket state, so that first is clean for another send. + zmq::message_t mx ; + p.first->recv(&mx, 0); } { diff --git a/tests/testutil.hpp b/tests/testutil.hpp index 7c0a127..3e9f954 100644 --- a/tests/testutil.hpp +++ b/tests/testutil.hpp @@ -55,8 +55,12 @@ namespace zmqtestutil zmq::message_t pong; s2.recv (&pong, 0); + // Send message via s2, so state is clean in case of req/rep. + std::string ret((char *)pong.data(), pong.size()); + s2.send(pong, 0); + // Return received data as std::string. - return std::string ((char*) pong.data(), pong.size()); + return ret ; } } -- cgit v1.2.3