message: test: mempool_persist: Verify prioritization is dumped correctly
diff: @@ -42,6 +42,7 @@ import time
  from test_framework.test_framework import BitcoinTestFramework
  from test_framework.util import assert_equal, assert_raises_rpc_error, wait_until
  +
  class MempoolPersistTest(BitcoinTestFramework):
  def set_test_params(self):
  self.num_nodes = 3
  @@ -60,7 +61,7 @@ class MempoolPersistTest(BitcoinTestFramework):
  self.log.debug("Send 5 transactions from node2 (to its own address)")
  for i in range(5):
  - self.nodes[2].sendtoaddress(self.nodes[2].getnewaddress(), Decimal("10"))
  + last_txid = self.nodes[2].sendtoaddress(self.nodes[2].getnewaddress(), Decimal("10"))
  node2_balance = self.nodes[2].getbalance()
  self.sync_all()
  @@ -68,6 +69,13 @@ class MempoolPersistTest(BitcoinTestFramework):
  assert_equal(len(self.nodes[0].getrawmempool()), 5)
  assert_equal(len(self.nodes[1].getrawmempool()), 5)
  + self.log.debug("Prioritize a transaction on node0")
  + fees = self.nodes[0].getmempoolentry(txid=last_txid)['fees']
  + assert_equal(fees['base'], fees['modified'])
  + self.nodes[0].prioritisetransaction(txid=last_txid, fee_delta=1000)
  + fees = self.nodes[0].getmempoolentry(txid=last_txid)['fees']
  + assert_equal(fees['base'] + Decimal('0.00001000'), fees['modified'])
  +
  self.log.debug("Stop-start the nodes. Verify that node0 has the transactions in its mempool and node1 does not. Verify that node2 calculates its balance correctly after loading wallet transactions.")
  self.stop_nodes()
  # Give this node a head-start, so we can be "extra-sure" that it didn't load anything later
  @@ -81,6 +89,10 @@ class MempoolPersistTest(BitcoinTestFramework):
  # The others have loaded their mempool. If node_1 loaded anything, we'd probably notice by now:
  assert_equal(len(self.nodes[1].getrawmempool()), 0)
  + self.log.debug('Verify prioritization is loaded correctly')
  + fees = self.nodes[0].getmempoolentry(txid=last_txid)['fees']
  + assert_equal(fees['base'] + Decimal('0.00001000'), fees['modified'])
  +
  # Verify accounting of mempool transactions after restart is correct
  self.nodes[2].syncwithvalidationinterfacequeue() # Flush mempool to wallet
  assert_equal(node2_balance, self.nodes[2].getbalance())
  