It is more a question than an issue. In feature_csv_activation.py, the same transactions that fail to be inserted in a block due to Locktime requirement not satisfied are allowed in mempool.
This test does not change default mempool policy.
Shouldn't it be the same behavior in both cases?
# All txs with nSequence 9 should fail either due to earlier mismatch or failing the CSV check
fail_txs = all_rlt_txs(bip112txs_vary_nSequence_9_v2)
fail_txs += [tx['tx'] for tx in bip112txs_vary_OP_CSV_9_v2 if not tx['sdf']]
for tx in fail_txs:
self.send_blocks([self.create_test_block([tx])], success=False,
reject_reason='non-mandatory-script-verify-flag (Locktime requirement not satisfied)')
+ self.miniwallet.sign_tx(tx)
+ # testmempoolaccept will return 'allowed': True for these transactions
+ print(self.nodes[0].testmempoolaccept(rawtxs=[tx.serialize().hex()]))