diff --git a/test/t8n/t8n.cpp b/test/t8n/t8n.cpp index 4c1a0bfe17..29c7d2f72b 100644 --- a/test/t8n/t8n.cpp +++ b/test/t8n/t8n.cpp @@ -16,6 +16,7 @@ namespace fs = std::filesystem; namespace json = nlohmann; using namespace evmone; using namespace evmone::test; +using namespace std::literals; static const auto NULL_HEXSTRING_256 = "0x" + std::string(512, '0'); static const auto NULL_HEXSTRING_32 = "0x" + std::string(64, '0'); @@ -30,6 +31,7 @@ int main(int argc, const char* argv[]) fs::path output_dir; fs::path output_result_file; fs::path output_alloc_file; + std::optional block_reward; for (int i = 0; i < argc; ++i) { @@ -54,6 +56,8 @@ int main(int argc, const char* argv[]) output_result_file = argv[i]; else if (arg == "--output.alloc" && ++i < argc) output_alloc_file = argv[i]; + else if (arg == "--state.reward" && ++i < argc && argv[i] != "-1"sv) + block_reward = intx::from_string(argv[i]); } state::BlockInfo block; @@ -128,6 +132,9 @@ int main(int argc, const char* argv[]) } } + if (block_reward.has_value()) + state.touch(block.coinbase).balance += *block_reward; + j_result["logsHash"] = hex0x(logs_hash(txs_logs)); j_result["stateRoot"] = hex0x(state::mpt_hash(state.get_accounts())); }