diff options
author | Carl Dong <contact@carldong.me> | 2022-05-17 14:45:18 -0400 |
---|---|---|
committer | Carl Dong <contact@carldong.me> | 2022-07-15 12:26:00 -0400 |
commit | b857ac60d9a0433036519c26675378bbf56a1de1 (patch) | |
tree | c68426f9c01a42b17b8571a863e792ca81c2744d /src/test/fuzz/mempool_utils.h | |
parent | b3267258b052557fc136b9a4dcb754afb9219470 (diff) | |
download | bitcoin-b857ac60d9a0433036519c26675378bbf56a1de1.tar.xz |
test/fuzz: Invoke LoadMempool via CChainState
Not only does this increase coverage, it is also more correct in that
when ::LoadMempool is called with a mempool and chainstate, it calls
AcceptToMemoryPool with just the chainstate.
AcceptToMemoryPool will then act on the chainstate's mempool via
CChainState::GetMempool, which may be different from the mempool
originally passed to ::LoadMempool. (In this fuzz test's case, it
definitely is different)
Also, move DummyChainstate to its own file since it's now used by the
validation_load_mempool fuzz test to replace CChainState's m_mempool.
Diffstat (limited to 'src/test/fuzz/mempool_utils.h')
-rw-r--r-- | src/test/fuzz/mempool_utils.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/fuzz/mempool_utils.h b/src/test/fuzz/mempool_utils.h new file mode 100644 index 0000000000..bfe12e30ba --- /dev/null +++ b/src/test/fuzz/mempool_utils.h @@ -0,0 +1,19 @@ +// 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_FUZZ_MEMPOOL_UTILS_H +#define BITCOIN_TEST_FUZZ_MEMPOOL_UTILS_H + +#include <validation.h> + +class DummyChainState final : public CChainState +{ +public: + void SetMempool(CTxMemPool* mempool) + { + m_mempool = mempool; + } +}; + +#endif // BITCOIN_TEST_FUZZ_MEMPOOL_UTILS_H |