Changeset View
Changeset View
Standalone View
Standalone View
src/test/net_tests.cpp
Show First 20 Lines • Show All 179 Lines • ▼ Show 20 Lines | BOOST_AUTO_TEST_CASE(cnode_simple_test) { | ||||
int height = 0; | int height = 0; | ||||
in_addr ipv4Addr; | in_addr ipv4Addr; | ||||
ipv4Addr.s_addr = 0xa0b0c001; | ipv4Addr.s_addr = 0xa0b0c001; | ||||
CAddress addr = CAddress(CService(ipv4Addr, 7777), NODE_NETWORK); | CAddress addr = CAddress(CService(ipv4Addr, 7777), NODE_NETWORK); | ||||
std::string pszDest; | std::string pszDest; | ||||
auto pnode1 = | auto pnode1 = std::make_unique<CNode>(id++, NODE_NETWORK, height, hSocket, | ||||
std::make_unique<CNode>(id++, NODE_NETWORK, height, hSocket, addr, 0, 0, | addr, 0, 0, 0, CAddress(), pszDest, | ||||
CAddress(), pszDest, ConnectionType::OUTBOUND); | ConnectionType::OUTBOUND); | ||||
BOOST_CHECK(pnode1->IsInboundConn() == false); | BOOST_CHECK(pnode1->IsInboundConn() == false); | ||||
auto pnode2 = | auto pnode2 = std::make_unique<CNode>(id++, NODE_NETWORK, height, hSocket, | ||||
std::make_unique<CNode>(id++, NODE_NETWORK, height, hSocket, addr, 1, 1, | addr, 1, 1, 1, CAddress(), pszDest, | ||||
CAddress(), pszDest, ConnectionType::INBOUND); | ConnectionType::INBOUND); | ||||
BOOST_CHECK(pnode2->IsInboundConn() == true); | BOOST_CHECK(pnode2->IsInboundConn() == true); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(test_getSubVersionEB) { | BOOST_AUTO_TEST_CASE(test_getSubVersionEB) { | ||||
BOOST_CHECK_EQUAL(getSubVersionEB(13800000000), "13800.0"); | BOOST_CHECK_EQUAL(getSubVersionEB(13800000000), "13800.0"); | ||||
BOOST_CHECK_EQUAL(getSubVersionEB(3800000000), "3800.0"); | BOOST_CHECK_EQUAL(getSubVersionEB(3800000000), "3800.0"); | ||||
BOOST_CHECK_EQUAL(getSubVersionEB(14000000), "14.0"); | BOOST_CHECK_EQUAL(getSubVersionEB(14000000), "14.0"); | ||||
BOOST_CHECK_EQUAL(getSubVersionEB(1540000), "1.5"); | BOOST_CHECK_EQUAL(getSubVersionEB(1540000), "1.5"); | ||||
▲ Show 20 Lines • Show All 107 Lines • ▼ Show 20 Lines | // !IsRoutable the undefined behavior is easier to trigger deterministically | ||||
mapLocalHost[addr] = lsi; | mapLocalHost[addr] = lsi; | ||||
} | } | ||||
// create a peer with an IPv4 address | // create a peer with an IPv4 address | ||||
in_addr ipv4AddrPeer; | in_addr ipv4AddrPeer; | ||||
ipv4AddrPeer.s_addr = 0xa0b0c001; | ipv4AddrPeer.s_addr = 0xa0b0c001; | ||||
CAddress addr = CAddress(CService(ipv4AddrPeer, 7777), NODE_NETWORK); | CAddress addr = CAddress(CService(ipv4AddrPeer, 7777), NODE_NETWORK); | ||||
std::unique_ptr<CNode> pnode = std::make_unique<CNode>( | std::unique_ptr<CNode> pnode = std::make_unique<CNode>( | ||||
0, NODE_NETWORK, 0, INVALID_SOCKET, addr, 0, 0, CAddress{}, | 0, NODE_NETWORK, 0, INVALID_SOCKET, addr, 0, 0, 0, CAddress{}, | ||||
std::string{}, ConnectionType::OUTBOUND); | std::string{}, ConnectionType::OUTBOUND); | ||||
pnode->fSuccessfullyConnected.store(true); | pnode->fSuccessfullyConnected.store(true); | ||||
// the peer claims to be reaching us via IPv6 | // the peer claims to be reaching us via IPv6 | ||||
in6_addr ipv6AddrLocal; | in6_addr ipv6AddrLocal; | ||||
memset(ipv6AddrLocal.s6_addr, 0, 16); | memset(ipv6AddrLocal.s6_addr, 0, 16); | ||||
ipv6AddrLocal.s6_addr[0] = 0xcc; | ipv6AddrLocal.s6_addr[0] = 0xcc; | ||||
CAddress addrLocal = CAddress(CService(ipv6AddrLocal, 7777), NODE_NETWORK); | CAddress addrLocal = CAddress(CService(ipv6AddrLocal, 7777), NODE_NETWORK); | ||||
Show All 28 Lines |