Fix a flakiness in abc_p2p_avalanche_proof_voting
Summary:
The poll_tests case is checking for the polling event with various cooldown and conflict conditions. But the previous case can sometimes interfere with the later one, because send_and_check_for_polling keeps voting on the previously sent proof (and they are always accepted). This can cause one of the 2 things:
- An initially rejected proof turns accepted, resetting the confict cooldown
- A proof got finalized, triggering the peer replacement cooldown
This diff makes sure we have full control over the state at each step in the test to prevent both potential issues.
Test Plan:
for i in {1..10}; do ./test/functional/test_runner.py abc_p2p_avalanche_proof_voting || break; done
Reviewers: #bitcoin_abc, PiRK
Reviewed By: #bitcoin_abc, PiRK
Differential Revision: https://reviews.bitcoinabc.org/D13226