summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGuido Goldstein <zmq@a-nugget.de>2010-08-28 06:31:40 +0200
committerMartin Sustrik <sustrik@250bpm.com>2010-08-28 06:31:40 +0200
commit67aa788577fb49474dd7329b14316d25f1b3c08b (patch)
tree83a843db53e748c5ca53729f2780919b6c099b2c /tests
parent4d9b046977f895f8d61731672a5e84967ed85eb2 (diff)
Fixed socket states in tests
Diffstat (limited to 'tests')
-rw-r--r--tests/test_pair.cpp3
-rw-r--r--tests/test_reqrep.cpp3
-rw-r--r--tests/testutil.hpp6
3 files changed, 11 insertions, 1 deletions
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 ;
}
}