CounterpartyXCP / counterparty-core

Counterparty Protocol Reference Implementation
http://counterparty.io
MIT License
285 stars 206 forks source link

Test Blockchain Reorganizations #1705

Open adamkrellenstein opened 2 months ago

adamkrellenstein commented 2 months ago

To avoid this! #1703

warrenpuffett commented 1 month ago

Now that the rust fetcher has been merged into develop it is handling reorgs. All the python process needs to do is determine if the block, received from the fetcher.get_block call, has a height less than the highest height it has received. I have test in the rust code that mocks out a reorg but a "real life" test would be better. This is perhaps something that we can test manually. If we keep a counterparty node running, it will hit a reorg as they're not uncommon. When a reorg is hit we can watch how it is handled and then check against a block explorer to make sure that it was dealt with correctly. I think @ouziel-slama is probably already doing that? So I will assign this to him but happy to have a further discussion.

adamkrellenstein commented 1 month ago

So the important thing to test here is not so much the block fetching code as everything else, in Python. For that, a mock should be simple.