Changeset View
Changeset View
Standalone View
Standalone View
src/avalanche/test/processor_tests.cpp
Show First 20 Lines • Show All 122 Lines • ▼ Show 20 Lines | std::shared_ptr<Proof> GetProof() { | ||||
coinbase.vout[0].nValue, current_coinbase + 1, | coinbase.vout[0].nValue, current_coinbase + 1, | ||||
true, coinbaseKey)); | true, coinbaseKey)); | ||||
return std::make_shared<Proof>(pb.build()); | return std::make_shared<Proof>(pb.build()); | ||||
} | } | ||||
bool addNode(NodeId nodeid) { | bool addNode(NodeId nodeid) { | ||||
auto proof = GetProof(); | auto proof = GetProof(); | ||||
BOOST_CHECK(m_processor->addProof(proof)); | BOOST_CHECK(m_processor->addProof(proof)); | ||||
return m_processor->addNode(nodeid, DelegationBuilder(*proof).build()); | return m_processor->addNode(nodeid, proof->getId()); | ||||
} | } | ||||
std::array<CNode *, 8> ConnectNodes() { | std::array<CNode *, 8> ConnectNodes() { | ||||
auto proof = GetProof(); | auto proof = GetProof(); | ||||
BOOST_CHECK(m_processor->addProof(proof)); | BOOST_CHECK(m_processor->addProof(proof)); | ||||
Delegation dg = DelegationBuilder(*proof).build(); | const ProofId &proofid = proof->getId(); | ||||
std::array<CNode *, 8> nodes; | std::array<CNode *, 8> nodes; | ||||
for (CNode *&n : nodes) { | for (CNode *&n : nodes) { | ||||
n = ConnectNode(NODE_AVALANCHE); | n = ConnectNode(NODE_AVALANCHE); | ||||
BOOST_CHECK(m_processor->addNode(n->GetId(), dg)); | BOOST_CHECK(m_processor->addNode(n->GetId(), proofid)); | ||||
} | } | ||||
return nodes; | return nodes; | ||||
} | } | ||||
void runEventLoop() { AvalancheTest::runEventLoop(*m_processor); } | void runEventLoop() { AvalancheTest::runEventLoop(*m_processor); } | ||||
NodeId getSuitableNodeToQuery() { | NodeId getSuitableNodeToQuery() { | ||||
▲ Show 20 Lines • Show All 583 Lines • ▼ Show 20 Lines | for (int i = 0; i < 10; i++) { | ||||
!m_processor->registerVotes(avanodeid, next(resp), updates)); | !m_processor->registerVotes(avanodeid, next(resp), updates)); | ||||
} | } | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(poll_inflight_count) { | BOOST_AUTO_TEST_CASE(poll_inflight_count) { | ||||
// Create enough nodes so that we run into the inflight request limit. | // Create enough nodes so that we run into the inflight request limit. | ||||
auto proof = GetProof(); | auto proof = GetProof(); | ||||
BOOST_CHECK(m_processor->addProof(proof)); | BOOST_CHECK(m_processor->addProof(proof)); | ||||
Delegation dg = DelegationBuilder(*proof).build(); | |||||
std::array<CNode *, AVALANCHE_MAX_INFLIGHT_POLL + 1> nodes; | std::array<CNode *, AVALANCHE_MAX_INFLIGHT_POLL + 1> nodes; | ||||
for (auto &n : nodes) { | for (auto &n : nodes) { | ||||
n = ConnectNode(NODE_AVALANCHE); | n = ConnectNode(NODE_AVALANCHE); | ||||
BOOST_CHECK(m_processor->addNode(n->GetId(), dg)); | BOOST_CHECK(m_processor->addNode(n->GetId(), proof->getId())); | ||||
} | } | ||||
// Add a block to poll | // Add a block to poll | ||||
CBlock block = CreateAndProcessBlock({}, CScript()); | CBlock block = CreateAndProcessBlock({}, CScript()); | ||||
const BlockHash blockHash = block.GetHash(); | const BlockHash blockHash = block.GetHash(); | ||||
const CBlockIndex *pindex; | const CBlockIndex *pindex; | ||||
{ | { | ||||
LOCK(cs_main); | LOCK(cs_main); | ||||
▲ Show 20 Lines • Show All 262 Lines • Show Last 20 Lines |