Skip to content

Commit f339976

Browse files
committed
Update txindex.py test for bare txid lookups.
This extends the txindex.py test, to check lookups also by bare txid where this is possible (mempool and txindex). Lookups by UTXO set only work on whatever hash is used for the UTXO before/after segwit light.
1 parent 662cfaf commit f339976

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

divi/qa/rpc-tests/txindex.py

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ def setup_network (self):
2222
self.is_network_split = False
2323
self.sync_all ()
2424

25-
def expect_found (self, node, txid):
26-
data = node.getrawtransaction (txid, 1)
27-
assert_equal (data["txid"], txid)
25+
def expect_found (self, node, key, value):
26+
data = node.getrawtransaction (value, 1)
27+
assert_equal (data[key], value)
2828

29-
def expect_not_found (self, node, txid):
30-
assert_raises (JSONRPCException, node.getrawtransaction, txid)
29+
def expect_not_found (self, node, value):
30+
assert_raises (JSONRPCException, node.getrawtransaction, value)
3131

3232
def run_test (self):
3333
self.nodes[0].setgenerate (True, 30)
@@ -46,21 +46,25 @@ def run_test (self):
4646
tx = self.nodes[0].createrawtransaction (inputs, {addr: value - 1})
4747
signed = self.nodes[0].signrawtransaction (tx)
4848
assert_equal (signed["complete"], True)
49-
txid = self.nodes[0].sendrawtransaction (signed["hex"])
49+
self.nodes[0].sendrawtransaction (signed["hex"])
50+
data = self.nodes[0].decoderawtransaction (signed["hex"])
51+
txid = data["txid"]
52+
bareTxid = data["baretxid"]
5053
sync_mempools (self.nodes)
5154

5255
print ("Lookup through mempool...")
5356
for n in self.nodes:
5457
assert_equal (n.getrawmempool (), [txid])
55-
self.expect_found (n, txid)
58+
self.expect_found (n, "txid", txid)
59+
self.expect_found (n, "baretxid", bareTxid)
5660

5761
print ("Lookup through UTXO set...")
5862
self.nodes[0].setgenerate (True, 1)
5963
sync_blocks (self.nodes)
6064
for n in self.nodes:
6165
assert_equal (n.getrawmempool (), [])
6266
assert n.gettxout (txid, 0) is not None
63-
self.expect_found (n, txid)
67+
self.expect_found (n, "txid", txid)
6468

6569
print ("Spending test output...")
6670
tx = self.nodes[0].createrawtransaction ([{"txid": txid, "vout": 0}], {addr: value - 2})
@@ -74,8 +78,10 @@ def run_test (self):
7478
for n in self.nodes:
7579
assert_equal (n.getrawmempool (), [])
7680
assert_equal (n.gettxout (txid, 0), None)
77-
self.expect_found (self.nodes[0], txid)
81+
self.expect_found (self.nodes[0], "txid", txid)
82+
self.expect_found (self.nodes[0], "baretxid", bareTxid)
7883
self.expect_not_found (self.nodes[1], txid)
84+
self.expect_not_found (self.nodes[1], bareTxid)
7985

8086

8187
if __name__ == '__main__':

0 commit comments

Comments
 (0)