aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Dong <contact@carldong.me>2022-06-27 15:47:00 -0400
committerCarl Dong <contact@carldong.me>2022-06-28 15:36:36 -0400
commit386c9472c8764738282e6d163b42e15a8feda7ea (patch)
treee1598d961ceba7cee592cfd3234633e8e66ff99c
parent82f00de7a6a60cbc9ad0c6e1d0ffb1bc70c49af5 (diff)
downloadbitcoin-386c9472c8764738282e6d163b42e15a8feda7ea.tar.xz
mempool: Make GetMinFee() with custom size protected
The version of GetMinFee() with a custom size specification is and should only be used by tests. Mark it as protected and use a derived class exposing GetMinFee() as public in tests.
-rw-r--r--src/test/mempool_tests.cpp8
-rw-r--r--src/txmempool.h3
2 files changed, 9 insertions, 2 deletions
diff --git a/src/test/mempool_tests.cpp b/src/test/mempool_tests.cpp
index bc63122025..8c745b07b9 100644
--- a/src/test/mempool_tests.cpp
+++ b/src/test/mempool_tests.cpp
@@ -16,6 +16,12 @@ BOOST_FIXTURE_TEST_SUITE(mempool_tests, TestingSetup)
static constexpr auto REMOVAL_REASON_DUMMY = MemPoolRemovalReason::REPLACED;
+class MemPoolTest final : public CTxMemPool
+{
+public:
+ using CTxMemPool::GetMinFee;
+};
+
BOOST_AUTO_TEST_CASE(MempoolRemoveTest)
{
// Test CTxMemPool::remove functionality
@@ -423,7 +429,7 @@ BOOST_AUTO_TEST_CASE(MempoolAncestorIndexingTest)
BOOST_AUTO_TEST_CASE(MempoolSizeLimitTest)
{
- CTxMemPool& pool = *Assert(m_node.mempool);
+ auto& pool = static_cast<MemPoolTest&>(*Assert(m_node.mempool));
LOCK2(cs_main, pool.cs);
TestMemPoolEntryHelper entry;
diff --git a/src/txmempool.h b/src/txmempool.h
index d5d573b4f9..95fd56879f 100644
--- a/src/txmempool.h
+++ b/src/txmempool.h
@@ -453,6 +453,8 @@ protected:
bool m_is_loaded GUARDED_BY(cs){false};
+ CFeeRate GetMinFee(size_t sizelimit) const;
+
public:
static const int ROLLING_FEE_HALFLIFE = 60 * 60 * 12; // public only for testing
@@ -707,7 +709,6 @@ public:
CFeeRate GetMinFee() const {
return GetMinFee(m_max_size_bytes);
}
- CFeeRate GetMinFee(size_t sizelimit) const;
/** Remove transactions from the mempool until its dynamic size is <= sizelimit.
* pvNoSpendsRemaining, if set, will be populated with the list of outpoints