mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-10-11 12:03:04 +02:00
Merge bitcoin/bitcoin#25412: rest: add /deploymentinfo
endpoint
a8250e30f1
doc: add release note about `/rest/deploymentinfo` (brunoerg)5c96020024
doc: add `/deploymentinfo` in REST-interface (brunoerg)3e44bee08e
test: add coverage for `/rest/deploymentinfo` (brunoerg)91497031cb
rest: add `/deploymentinfo` (brunoerg) Pull request description: #23508 added a new RPC named `getdeploymentinfo`, it moved the softfork section from `getblockchaininfo` into this new one. In the REST interface, we have an endpoint named`/rest/chaininfo.json` (which refers to `getblockchaininfo`), so, this PR adds a new REST endpoint named `/deploymentinfo` which refers to `getdeploymentinfo`. You can use it by passing a block hash, e.g: '/rest/deploymentinfo/<BLOCKHASH>.json' or you can use it without passing a block hash to get the 'deploymentinfo' for the last block. ACKs for top commit: jonatack: re-ACKa8250e30f1
rebase-only since my last review at c65f82bb achow101: ACKa8250e30f1
stickies-v: re-ACKa8250e30f1
Tree-SHA512: 0735183b6828d51a72ed0e2be5a09b314ac4693f548982c6e9adaa0ef07a55aa428d3b2d1b1de70b83169811a663a8624b686166e5797f624dcc00178b9796e6
This commit is contained in:
@@ -387,6 +387,17 @@ class RESTTest (BitcoinTestFramework):
|
||||
assert_equal(self.test_rest_request(f"/headers/{bb_hash}", query_params={"count": 1}), self.test_rest_request(f"/headers/1/{bb_hash}"))
|
||||
assert_equal(self.test_rest_request(f"/blockfilterheaders/basic/{bb_hash}", query_params={"count": 1}), self.test_rest_request(f"/blockfilterheaders/basic/5/{bb_hash}"))
|
||||
|
||||
self.log.info("Test the /deploymentinfo URI")
|
||||
|
||||
deployment_info = self.nodes[0].getdeploymentinfo()
|
||||
assert_equal(deployment_info, self.test_rest_request('/deploymentinfo'))
|
||||
|
||||
non_existing_blockhash = '42759cde25462784395a337460bde75f58e73d3f08bd31fdc3507cbac856a2c4'
|
||||
resp = self.test_rest_request(f'/deploymentinfo/{non_existing_blockhash}', ret_type=RetType.OBJ, status=400)
|
||||
assert_equal(resp.read().decode('utf-8').rstrip(), "Block not found")
|
||||
|
||||
resp = self.test_rest_request(f"/deploymentinfo/{INVALID_PARAM}", ret_type=RetType.OBJ, status=400)
|
||||
assert_equal(resp.read().decode('utf-8').rstrip(), f"Invalid hash: {INVALID_PARAM}")
|
||||
|
||||
if __name__ == '__main__':
|
||||
RESTTest().main()
|
||||
|
Reference in New Issue
Block a user