Changeset View
Changeset View
Standalone View
Standalone View
src/avalanche/test/proofpool_tests.cpp
Show All 12 Lines | |||||
#include <avalanche/test/util.h> | #include <avalanche/test/util.h> | ||||
#include <test/util/setup_common.h> | #include <test/util/setup_common.h> | ||||
#include <boost/test/unit_test.hpp> | #include <boost/test/unit_test.hpp> | ||||
using namespace avalanche; | using namespace avalanche; | ||||
BOOST_FIXTURE_TEST_SUITE(proofpool_tests, TestingSetup) | BOOST_FIXTURE_TEST_SUITE(proofpool_tests, TestChain100Setup) | ||||
BOOST_AUTO_TEST_CASE(add_remove_proof_no_conflict) { | BOOST_AUTO_TEST_CASE(add_remove_proof_no_conflict) { | ||||
ProofPool testPool; | ProofPool testPool; | ||||
std::vector<ProofRef> proofs; | std::vector<ProofRef> proofs; | ||||
for (size_t i = 0; i < 10; i++) { | for (size_t i = 0; i < 10; i++) { | ||||
// Add a bunch of random proofs | // Add a bunch of random proofs | ||||
auto proof = buildRandomProof(MIN_VALID_PROOF_SCORE); | auto proof = buildRandomProof(MIN_VALID_PROOF_SCORE); | ||||
Show All 40 Lines | BOOST_AUTO_TEST_CASE(add_remove_proof_no_conflict) { | ||||
for (auto proof : proofs) { | for (auto proof : proofs) { | ||||
BOOST_CHECK(testPool.removeProof(proof->getId())); | BOOST_CHECK(testPool.removeProof(proof->getId())); | ||||
} | } | ||||
BOOST_CHECK_EQUAL(testPool.size(), 0); | BOOST_CHECK_EQUAL(testPool.size(), 0); | ||||
BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(rescan) { | BOOST_AUTO_TEST_CASE(rescan) { | ||||
gArgs.ForceSetArg("-avaproofstakeutxoconfirmations", "0"); | |||||
ProofPool testPool; | ProofPool testPool; | ||||
avalanche::PeerManager pm; | avalanche::PeerManager pm; | ||||
testPool.rescan(pm); | testPool.rescan(pm); | ||||
BOOST_CHECK_EQUAL(testPool.size(), 0); | BOOST_CHECK_EQUAL(testPool.size(), 0); | ||||
BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | ||||
// No peer should be created | // No peer should be created | ||||
Show All 14 Lines | BOOST_AUTO_TEST_CASE(rescan) { | ||||
// All the proofs should be registered as peer | // All the proofs should be registered as peer | ||||
std::set<ProofRef, ProofRefComparatorByAddress> pmProofs; | std::set<ProofRef, ProofRefComparatorByAddress> pmProofs; | ||||
pm.forEachPeer([&](const Peer &p) { pmProofs.insert(p.proof); }); | pm.forEachPeer([&](const Peer &p) { pmProofs.insert(p.proof); }); | ||||
BOOST_CHECK_EQUAL_COLLECTIONS(poolProofs.begin(), poolProofs.end(), | BOOST_CHECK_EQUAL_COLLECTIONS(poolProofs.begin(), poolProofs.end(), | ||||
pmProofs.begin(), pmProofs.end()); | pmProofs.begin(), pmProofs.end()); | ||||
BOOST_CHECK_EQUAL(testPool.size(), 0); | BOOST_CHECK_EQUAL(testPool.size(), 0); | ||||
BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | BOOST_CHECK_EQUAL(testPool.countProofs(), 0); | ||||
gArgs.ClearForcedArg("-avaproofstakeutxoconfirmations"); | |||||
} | } | ||||
BOOST_AUTO_TEST_CASE(proof_override) { | BOOST_AUTO_TEST_CASE(proof_override) { | ||||
ProofPool testPool; | ProofPool testPool; | ||||
const CKey key = CKey::MakeCompressedKey(); | const CKey key = CKey::MakeCompressedKey(); | ||||
auto buildProofWithSequenceAndOutpoints = | auto buildProofWithSequenceAndOutpoints = | ||||
▲ Show 20 Lines • Show All 244 Lines • Show Last 20 Lines |