def METHOD_NAME(self):
    self.log.info("test -blocknotify")
    block_count = 10
    blocks = self.nodes[1].generate(block_count)
    # wait at most 10 seconds for expected file size before reading the content
    wait_until(lambda: os.path.isfile(self.block_filename) and os.stat(self.block_filename).st_size >= (block_count * 65), timeout=10)
    # file content should equal the generated blocks hashes
    with open(self.block_filename, 'r') as f:
        assert_equal(sorted(blocks), sorted(f.read().splitlines()))
    self.log.info("test -walletnotify")
    # wait at most 10 seconds for expected file size before reading the content
    wait_until(lambda: os.path.isfile(self.tx_filename) and os.stat(self.tx_filename).st_size >= (block_count * 65), timeout=10)
    # file content should equal the generated transaction hashes
    txids_rpc = list(map(lambda t: t['txid'], self.nodes[1].listtransactions("*", block_count)))
    with open(self.tx_filename, 'r') as f:
        assert_equal(sorted(txids_rpc), sorted(f.read().splitlines()))
    os.remove(self.tx_filename)
    self.log.info("test -walletnotify after rescan")
    # restart node to rescan to force wallet notifications
    self.restart_node(1)
    connect_nodes_bi(self.nodes, 0, 1)
    wait_until(lambda: os.path.isfile(self.tx_filename) and os.stat(self.tx_filename).st_size >= (block_count * 65), timeout=10)
    # file content should equal the generated transaction hashes
    txids_rpc = list(map(lambda t: t['txid'], self.nodes[1].listtransactions("*", block_count)))
    with open(self.tx_filename, 'r') as f:
        assert_equal(sorted(txids_rpc), sorted(f.read().splitlines()))
    # Mine another 41 up-version blocks. -alertnotify should trigger on the 51st.
    self.log.info("test -alertnotify")
    self.nodes[1].generate(41)
    self.sync_all()
    # Give raptoreumd 10 seconds to write the alert notification
    wait_until(lambda: os.path.isfile(self.alert_filename) and os.path.getsize(self.alert_filename), timeout=10)
    with open(self.alert_filename, 'r', encoding='utf8') as f:
        alert_text = f.read()
    # Mine more up-version blocks, should not get more alerts:
    self.nodes[1].generate(2)
    self.sync_all()
    with open(self.alert_filename, 'r', encoding='utf8') as f:
        alert_text2 = f.read()
    self.log.info("-alertnotify should not continue notifying for more unknown version blocks")
    assert_equal(alert_text, alert_text2)