test: add BIP37 'filterclear' test to p2p_filter.py

This commit is contained in:
Sebastian Falbesoner 2020-03-31 00:10:32 +02:00
parent 7e1fc03b18
commit 0055922958
3 changed files with 28 additions and 0 deletions

View file

@ -11,6 +11,7 @@ from test_framework.messages import (
MSG_FILTERED_BLOCK,
msg_getdata,
msg_filterload,
msg_filterclear,
)
from test_framework.mininode import (
P2PInterface,
@ -97,6 +98,13 @@ class FilterTest(BitcoinTestFramework):
filter_node.wait_for_tx(txid)
assert not filter_node.merkleblock_received
self.log.info('Check that after deleting filter all txs get relayed again')
filter_node.send_message(msg_filterclear())
filter_node.sync_with_ping()
for _ in range(5):
txid = self.nodes[0].sendtoaddress(self.nodes[0].getnewaddress(), 7)
filter_node.wait_for_tx(txid)
if __name__ == '__main__':
FilterTest().main()

View file

@ -1356,6 +1356,23 @@ class msg_filterload:
self.data, self.nHashFuncs, self.nTweak, self.nFlags)
class msg_filterclear:
__slots__ = ()
command = b"filterclear"
def __init__(self):
pass
def deserialize(self, f):
pass
def serialize(self):
return b""
def __repr__(self):
return "msg_filterclear()"
class msg_feefilter:
__slots__ = ("feerate",)
command = b"feefilter"

View file

@ -30,6 +30,7 @@ from test_framework.messages import (
msg_blocktxn,
msg_cmpctblock,
msg_feefilter,
msg_filterclear,
msg_filterload,
msg_getaddr,
msg_getblocks,
@ -64,6 +65,7 @@ MESSAGEMAP = {
b"blocktxn": msg_blocktxn,
b"cmpctblock": msg_cmpctblock,
b"feefilter": msg_feefilter,
b"filterclear": msg_filterclear,
b"filterload": msg_filterload,
b"getaddr": msg_getaddr,
b"getblocks": msg_getblocks,
@ -322,6 +324,7 @@ class P2PInterface(P2PConnection):
def on_blocktxn(self, message): pass
def on_cmpctblock(self, message): pass
def on_feefilter(self, message): pass
def on_filterclear(self, message): pass
def on_filterload(self, message): pass
def on_getaddr(self, message): pass
def on_getblocks(self, message): pass