Sets the SCRIPT_ENABLE_OPCODE_MONOLITH flag if monolith has been enabled
Co-authored-by: Joshua Yabut <yabut.joshua@gmail.com>
Co-authored-by: Marcos Mayorga <mm@mm-studios.com>
Co-authored-by: Daniel Connolly <daniel@dconnolly.com>
Differential D1194
Set Monolith opcode enable script flag if monolith enabled deadalnix on Mar 13 2018, 12:14. Authored by
Details
Sets the SCRIPT_ENABLE_OPCODE_MONOLITH flag if monolith has been enabled Co-authored-by: Joshua Yabut <yabut.joshua@gmail.com> tested in test/validation_tests.cpp make check
Diff Detail
Event TimelineThere are a very large number of changes, so older changes are hidden. Show Older Changes Comment Actions This actually do not test at all if the feature activates when you expect it to. (also, this break reorg across the activation and will cause nodes to ban each others, which a proper test would have detected).
Comment Actions We'll need an RPC test that creates a block with the new opcodes in script. It should have:
There should be a similar test for the mempool. These tests can be interleaved with the above test to ensure that transactions are being accepted into the node's mempool appropriately as well. FINALLY, there should be a test that:
In conclusion, this should have 3 RPC tests:
Comment Actions add functional tests, which are failing - flags not set properly when CScriptCheck:operator() in validation.cpp calls VerifyScript() Comment Actions
Comment Actions Just a quick note: I'm not sure that the banscore test is valid. I want to split this diff in two, with the tests defined first to confirm behaviour before the changes.
Comment Actions This diff is not up to date with numerous changes done in master.
Comment Actions user@debian:~/code/bitcoin-abc$ test/functional/test_runner.py ALL | ✓ Passed | 480 s (accumulated) ... Runtime: 127 s user@debian:~/code/bitcoin-abc$ src/test/test_bitcoin Running 285 test cases... *** No errors detected
Comment Actions Superseeded by D1231 . This contains an off by one error for the activation, did not clean the mempool properly, and various other bugs, which in turn show that the tests are inadequate. |