37 uint32_t current_height{0};
38 const auto advance_height{
39 [&] { current_height = fuzzed_data_provider.
ConsumeIntegralInRange<
decltype(current_height)>(current_height, 1 << 30); },
54 const auto tx_submitted_in_package = fuzzed_data_provider.
ConsumeBool();
55 const auto tx_has_mempool_parents = fuzzed_data_provider.
ConsumeBool();
57 entry.GetTxSize(), entry.GetHeight(),
59 tx_submitted_in_package,
61 tx_has_mempool_parents);
68 std::list<CTxMemPoolEntry> mempool_entries;
79 std::vector<RemovedMempoolTransactionInfo> txs;
80 txs.reserve(mempool_entries.size());
82 txs.emplace_back(mempool_entry);
85 block_policy_estimator.
processBlock(txs, current_height);
97 auto horizon = fuzzed_data_provider.
PickValueInArray(ALL_FEE_ESTIMATE_HORIZONS);
98 auto* result_ptr = fuzzed_data_provider.
ConsumeBool() ? &result :
nullptr;
99 (void)block_policy_estimator.
estimateRawFee(conf_target, success_threshold, horizon, result_ptr);
103 auto* fee_calc_ptr = fuzzed_data_provider.
ConsumeBool() ? &fee_calculation :
nullptr;
104 auto conservative = fuzzed_data_provider.
ConsumeBool();
105 (void)block_policy_estimator.
estimateSmartFee(conf_target, fee_calc_ptr, conservative);
112 block_policy_estimator.
Write(fuzzed_auto_file);
113 block_policy_estimator.
Read(fuzzed_auto_file);
114 (void)fuzzed_auto_file.
fclose();
virtual CFeeRate estimateSmartFee(int confTarget, FeeCalculation *feeCalc, bool conservative) const EXCLUSIVE_LOCKS_REQUIRED(!m_cs_fee_estimator)
Estimate feerate needed to get be included in a block within confTarget blocks.
CFeeRate estimateRawFee(int confTarget, double successThreshold, FeeEstimateHorizon horizon, EstimationResult *result=nullptr) const EXCLUSIVE_LOCKS_REQUIRED(!m_cs_fee_estimator)
Return a specific fee estimate calculation with a given success threshold and time horizon,...
CTxMemPoolEntry stores data about the corresponding transaction, as well as data about all in-mempool...
NewMempoolTransactionInfo(const CTransactionRef &tx, const CAmount &fee, const int64_t vsize, const unsigned int height, const bool mempool_limit_bypassed, const bool submitted_in_package, const bool chainstate_is_current, const bool has_no_mempool_parents)