From a333c42cdeab4675c22df25255313752d81a2d4e Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Mon, 8 Feb 2016 18:47:56 +0000 Subject: core_tests: add tests for hard fork behaviors (MRL-0004) We also replace the --fakechain option with an optional structure containing details about configuration for the core/blockchain, for test purposes. This seems more future friendly. --- tests/core_tests/chaingen.h | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'tests/core_tests/chaingen.h') diff --git a/tests/core_tests/chaingen.h b/tests/core_tests/chaingen.h index a5e93390d..f2bbb7346 100644 --- a/tests/core_tests/chaingen.h +++ b/tests/core_tests/chaingen.h @@ -471,6 +471,14 @@ inline bool replay_events_through_core(cryptonote::core& cr, const std::vector +struct get_test_options { + const std::pair hard_forks[1] = {std::make_pair(1, 0)}; + const cryptonote::test_options test_options = { + hard_forks + }; +}; +//-------------------------------------------------------------------------- +template inline bool do_replay_events(std::vector& events) { boost::program_options::options_description desc("Allowed options"); @@ -485,15 +493,12 @@ inline bool do_replay_events(std::vector& events) if (!r) return false; - // hardcode a --fakechain option for tests - static const char * const fakechain[] = {"", "--fakechain"}; - boost::program_options::store(boost::program_options::parse_command_line(2, fakechain, desc), vm); - cryptonote::cryptonote_protocol_stub pr; //TODO: stub only for this kind of test, make real validation of relayed objects cryptonote::core c(&pr); // FIXME: make sure that vm has arg_testnet_on set to true or false if // this test needs for it to be so. - if (!c.init(vm)) + const get_test_options gto; + if (!c.init(vm, >o.test_options)) { std::cout << concolor::magenta << "Failed to init core" << concolor::normal << std::endl; return false; -- cgit v1.2.3