test: Add tests for getindexinfo RPC

This commit is contained in:
Fabian Jahr 2020-07-31 14:02:00 +02:00
parent 667bc7a7f7
commit c447b09458
No known key found for this signature in database
GPG Key ID: F13D1E9D890798CD

View File

@ -61,6 +61,34 @@ class RpcMiscTest(BitcoinTestFramework):
node.logging(include=['qt'])
assert_equal(node.logging()['qt'], True)
self.log.info("test getindexinfo")
# Without any indices running the RPC returns an empty object
assert_equal(node.getindexinfo(), {})
# Restart the node with indices and wait for them to sync
self.restart_node(0, ["-txindex", "-blockfilterindex"])
self.wait_until(lambda: all(i["synced"] for i in node.getindexinfo().values()))
# Returns a list of all running indices by default
assert_equal(
node.getindexinfo(),
{
"txindex": {"synced": True, "best_block_height": 200},
"basic block filter index": {"synced": True, "best_block_height": 200}
}
)
# Specifying an index by name returns only the status of that index
assert_equal(
node.getindexinfo("txindex"),
{
"txindex": {"synced": True, "best_block_height": 200},
}
)
# Specifying an unknown index name returns an empty result
assert_equal(node.getindexinfo("foo"), {})
if __name__ == '__main__':
RpcMiscTest().main()