![]() |
Bitcoin Core 30.99.0
P2P Digital Currency
|
#include <test/util/txmempool.h>#include <chainparams.h>#include <node/context.h>#include <node/mempool_args.h>#include <policy/rbf.h>#include <policy/truc_policy.h>#include <test/util/transaction_utils.h>#include <util/check.h>#include <util/time.h>#include <util/translation.h>#include <validation.h>Go to the source code of this file.
Functions | |
| CTxMemPool::Options | MemPoolOptionsForTest (const NodeContext &node) |
| std::optional< std::string > | CheckPackageMempoolAcceptResult (const Package &txns, const PackageMempoolAcceptResult &result, bool expect_valid, const CTxMemPool *mempool) |
| Check expected properties for every PackageMempoolAcceptResult, regardless of value. More... | |
| void | CheckMempoolEphemeralInvariants (const CTxMemPool &tx_pool) |
| Check that we never get into a state where an ephemeral dust transaction would be mined without the spend of the dust also being mined. More... | |
| void | CheckMempoolTRUCInvariants (const CTxMemPool &tx_pool) |
| For every transaction in tx_pool, check TRUC invariants: More... | |
| void | AddToMempool (CTxMemPool &tx_pool, const CTxMemPoolEntry &entry) |
| One-line wrapper for creating a mempool changeset with a single transaction and applying it. More... | |
| void | MockMempoolMinFee (const CFeeRate &target_feerate, CTxMemPool &mempool) |
| Mock the mempool minimum feerate by adding a transaction and calling TrimToSize(0), simulating the mempool "reaching capacity" and evicting by descendant feerate. More... | |
| void AddToMempool | ( | CTxMemPool & | tx_pool, |
| const CTxMemPoolEntry & | entry | ||
| ) |
One-line wrapper for creating a mempool changeset with a single transaction and applying it.
Definition at line 213 of file txmempool.cpp.
| void CheckMempoolEphemeralInvariants | ( | const CTxMemPool & | tx_pool | ) |
Check that we never get into a state where an ephemeral dust transaction would be mined without the spend of the dust also being mined.
This assumes standardness checks are being enforced.
Definition at line 145 of file txmempool.cpp.
| void CheckMempoolTRUCInvariants | ( | const CTxMemPool & | tx_pool | ) |
For every transaction in tx_pool, check TRUC invariants:
Definition at line 182 of file txmempool.cpp.
| std::optional< std::string > CheckPackageMempoolAcceptResult | ( | const Package & | txns, |
| const PackageMempoolAcceptResult & | result, | ||
| bool | expect_valid, | ||
| const CTxMemPool * | mempool | ||
| ) |
Check expected properties for every PackageMempoolAcceptResult, regardless of value.
Returns a string if an error occurs with error populated, nullopt otherwise. If mempool is provided, checks that the expected transactions are in mempool (this should be set to nullptr for a test_accept).
Definition at line 44 of file txmempool.cpp.
| CTxMemPool::Options MemPoolOptionsForTest | ( | const NodeContext & | node | ) |
Definition at line 21 of file txmempool.cpp.
| void MockMempoolMinFee | ( | const CFeeRate & | target_feerate, |
| CTxMemPool & | mempool | ||
| ) |
Mock the mempool minimum feerate by adding a transaction and calling TrimToSize(0), simulating the mempool "reaching capacity" and evicting by descendant feerate.
Note that this clears the mempool, and the new minimum feerate will depend on the maximum feerate of transactions removed, so this must be called while the mempool is empty.
| target_feerate | The new mempool minimum feerate after this function returns. Must be above max(incremental feerate, min relay feerate), or 1sat/vB with default settings. |
| mempool | The mempool to mock the minimum feerate for. Must be empty when called. |
Definition at line 223 of file txmempool.cpp.