blob: 2fe7d6969301bf6d07eb1d35c535d8308c93a6cb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
// Copyright (c) 2022 The Bitcoin Core developers
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#ifndef BITCOIN_TEST_UTIL_TXMEMPOOL_H
#define BITCOIN_TEST_UTIL_TXMEMPOOL_H
#include <txmempool.h>
#include <util/time.h>
namespace node {
struct NodeContext;
}
CTxMemPool::Options MemPoolOptionsForTest(const node::NodeContext& node);
struct TestMemPoolEntryHelper {
// Default values
CAmount nFee{0};
NodeSeconds time{};
unsigned int nHeight{1};
bool spendsCoinbase{false};
unsigned int sigOpCost{4};
LockPoints lp;
CTxMemPoolEntry FromTx(const CMutableTransaction& tx) const;
CTxMemPoolEntry FromTx(const CTransactionRef& tx) const;
// Change the default value
TestMemPoolEntryHelper& Fee(CAmount _fee) { nFee = _fee; return *this; }
TestMemPoolEntryHelper& Time(NodeSeconds tp) { time = tp; return *this; }
TestMemPoolEntryHelper& Height(unsigned int _height) { nHeight = _height; return *this; }
TestMemPoolEntryHelper& SpendsCoinbase(bool _flag) { spendsCoinbase = _flag; return *this; }
TestMemPoolEntryHelper& SigOpsCost(unsigned int _sigopsCost) { sigOpCost = _sigopsCost; return *this; }
};
#endif // BITCOIN_TEST_UTIL_TXMEMPOOL_H
|