mirror of
https://github.com/zeromq/cppzmq.git
synced 2025-05-28 15:14:12 +02:00
Problem: move poller tests are unspecific
Solution: remove redundant assertions (tested elsewhere), and add assertion behaviour of calling wait on moved-from poller
This commit is contained in:
parent
bf47be0a0c
commit
89d9db7366
@ -367,28 +367,29 @@ TEST(poller, wait_on_move_constructed_poller)
|
|||||||
zmq::poller_t a;
|
zmq::poller_t a;
|
||||||
zmq::poller_t::handler_t handler;
|
zmq::poller_t::handler_t handler;
|
||||||
ASSERT_NO_THROW (a.add (s.server, ZMQ_POLLIN, handler));
|
ASSERT_NO_THROW (a.add (s.server, ZMQ_POLLIN, handler));
|
||||||
ASSERT_EQ(1u, a.size ());
|
|
||||||
zmq::poller_t b {std::move (a)};
|
zmq::poller_t b {std::move (a)};
|
||||||
ASSERT_EQ(1u, b.size ());
|
ASSERT_EQ(1u, b.size ());
|
||||||
ASSERT_NO_THROW (b.wait (std::chrono::milliseconds {-1}));
|
/// \todo the actual error code should be checked
|
||||||
|
ASSERT_THROW(a.wait(std::chrono::milliseconds{10}), zmq::error_t);
|
||||||
|
ASSERT_TRUE (b.wait (std::chrono::milliseconds {-1}));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(poller, wait_on_move_assign_poller)
|
TEST(poller, wait_on_move_assigned_poller)
|
||||||
{
|
{
|
||||||
server_client_setup s;
|
server_client_setup s;
|
||||||
ASSERT_NO_THROW (s.client.send ("Hi"));
|
ASSERT_NO_THROW (s.client.send ("Hi"));
|
||||||
zmq::poller_t a;
|
zmq::poller_t a;
|
||||||
zmq::poller_t::handler_t handler;
|
zmq::poller_t::handler_t handler;
|
||||||
ASSERT_NO_THROW (a.add (s.server, ZMQ_POLLIN, handler));
|
ASSERT_NO_THROW (a.add (s.server, ZMQ_POLLIN, handler));
|
||||||
ASSERT_EQ(1u, a.size ());
|
|
||||||
zmq::poller_t b;
|
zmq::poller_t b;
|
||||||
ASSERT_EQ(0u, b.size ());
|
|
||||||
b = {std::move (a)};
|
b = {std::move (a)};
|
||||||
ASSERT_EQ(1u, b.size ());
|
ASSERT_EQ(1u, b.size ());
|
||||||
ASSERT_NO_THROW (b.wait (std::chrono::milliseconds {-1}));
|
/// \todo the actual error code should be checked
|
||||||
|
ASSERT_THROW(a.wait(std::chrono::milliseconds{10}), zmq::error_t);
|
||||||
|
ASSERT_TRUE (b.wait (std::chrono::milliseconds {-1}));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(poller, received_on_move_construced_poller)
|
TEST(poller, received_on_move_constructed_poller)
|
||||||
{
|
{
|
||||||
// Setup server and client
|
// Setup server and client
|
||||||
server_client_setup s;
|
server_client_setup s;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user