37 : m_invalid_tx_index(0)
38 , m_invalid_block_index(0)
46 if (m_invalid_tx_index == event_idx)
52 bool check_tx_verification_context_array(
const std::vector<cryptonote::tx_verification_context>& tvcs,
size_t tx_added,
size_t event_idx,
const std::vector<cryptonote::transaction>& )
56 if (tvc.m_verification_failed)
58 if (m_invalid_tx_index == event_idx)
61 return failed == 0 && tx_added == tvcs.size();
66 if (m_invalid_block_index == event_idx)
74 m_invalid_block_index = ev_index + 1;
80 m_invalid_tx_index = ev_index + 1;
84 bool generate_with(std::vector<test_event_entry>& events,
size_t mixin,
86 const std::function<
bool(std::vector<cryptonote::tx_source_entry> &sources, std::vector<cryptonote::tx_destination_entry> &destinations,
size_t)> &pre_tx,
92 size_t m_invalid_tx_index;
93 size_t m_invalid_block_index;
98 const std::pair<uint8_t, uint64_t>
hard_forks[4] = {std::make_pair(1, 0), std::make_pair(2, 1), std::make_pair(10, 73), std::make_pair(0, 0)};
107 bool generate(std::vector<test_event_entry>& events)
const;
113 bool generate(std::vector<test_event_entry>& events)
const;
119 bool generate(std::vector<test_event_entry>& events)
const;
125 bool generate(std::vector<test_event_entry>& events)
const;
131 bool generate(std::vector<test_event_entry>& events)
const;
137 bool generate(std::vector<test_event_entry>& events)
const;
143 bool generate(std::vector<test_event_entry>& events)
const;
149 bool generate(std::vector<test_event_entry>& events)
const;
155 bool generate(std::vector<test_event_entry>& events)
const;
161 bool generate(std::vector<test_event_entry>& events)
const;
167 bool generate(std::vector<test_event_entry>& events)
const;
173 bool generate(std::vector<test_event_entry>& events)
const;
179 bool generate(std::vector<test_event_entry>& events)
const;
185 bool generate(std::vector<test_event_entry>& events)
const;
191 bool generate(std::vector<test_event_entry>& events)
const;
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool generate_with(std::vector< test_event_entry > &events, size_t mixin, size_t n_txes, const uint64_t *amounts_paid, bool valid, const rct::RCTConfig *rct_config, const std::function< bool(std::vector< cryptonote::tx_source_entry > &sources, std::vector< cryptonote::tx_destination_entry > &destinations, size_t)> &pre_tx, const std::function< bool(cryptonote::transaction &tx, size_t)> &post_tx) const
bool generate(std::vector< test_event_entry > &events) const
bool mark_invalid_tx(cryptonote::core &, size_t ev_index, const std::vector< test_event_entry > &)
bool generate(std::vector< test_event_entry > &events) const
bool m_verification_failed
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
const std::pair< uint8_t, uint64_t > hard_forks[2]
gen_bp_tx_validation_base()
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
handles core cryptonote functionality
unsigned __int64 uint64_t
std::unique_ptr< void, terminate > context
Unique ZMQ context handle, calls zmq_term on destruction.
#define REGISTER_CALLBACK_METHOD(CLASS, METHOD)
bool check_block_verification_context(const cryptonote::block_verification_context &bvc, size_t event_idx, const cryptonote::block &)
bool mark_invalid_block(cryptonote::core &, size_t ev_index, const std::vector< test_event_entry > &)
bool check_tx_verification_context(const cryptonote::tx_verification_context &tvc, bool tx_added, size_t event_idx, const cryptonote::transaction &)
bool check_tx_verification_context_array(const std::vector< cryptonote::tx_verification_context > &tvcs, size_t tx_added, size_t event_idx, const std::vector< cryptonote::transaction > &)
const cryptonote::test_options test_options
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool generate(std::vector< test_event_entry > &events) const
bool check_bp(const cryptonote::transaction &tx, size_t tx_idx, const size_t *sizes, const char *context) const
bool generate(std::vector< test_event_entry > &events) const
bool m_verification_failed