mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-25 02:33:24 -03:00
test: improve sock_tests/move_assignment
Use also a socket for the moved-to object and check which one is closed when.
This commit is contained in:
parent
5086a99b84
commit
7df4508369
1 changed files with 18 additions and 6 deletions
|
@ -58,15 +58,27 @@ BOOST_AUTO_TEST_CASE(move_constructor)
|
|||
|
||||
BOOST_AUTO_TEST_CASE(move_assignment)
|
||||
{
|
||||
const SOCKET s = CreateSocket();
|
||||
Sock* sock1 = new Sock(s);
|
||||
Sock* sock2 = new Sock(INVALID_SOCKET);
|
||||
const SOCKET s1 = CreateSocket();
|
||||
const SOCKET s2 = CreateSocket();
|
||||
Sock* sock1 = new Sock(s1);
|
||||
Sock* sock2 = new Sock(s2);
|
||||
|
||||
BOOST_CHECK(!SocketIsClosed(s1));
|
||||
BOOST_CHECK(!SocketIsClosed(s2));
|
||||
|
||||
*sock2 = std::move(*sock1);
|
||||
BOOST_CHECK(!SocketIsClosed(s1));
|
||||
BOOST_CHECK(SocketIsClosed(s2));
|
||||
BOOST_CHECK(*sock2 == s1);
|
||||
|
||||
delete sock1;
|
||||
BOOST_CHECK(!SocketIsClosed(s));
|
||||
BOOST_CHECK(*sock2 == s);
|
||||
BOOST_CHECK(!SocketIsClosed(s1));
|
||||
BOOST_CHECK(SocketIsClosed(s2));
|
||||
BOOST_CHECK(*sock2 == s1);
|
||||
|
||||
delete sock2;
|
||||
BOOST_CHECK(SocketIsClosed(s));
|
||||
BOOST_CHECK(SocketIsClosed(s1));
|
||||
BOOST_CHECK(SocketIsClosed(s2));
|
||||
}
|
||||
|
||||
#ifndef WIN32 // Windows does not have socketpair(2).
|
||||
|
|
Loading…
Add table
Reference in a new issue