Changeset View
Changeset View
Standalone View
Standalone View
test/functional/rpc_deriveaddresses.py
#!/usr/bin/env python3 | #!/usr/bin/env python3 | ||||
# Copyright (c) 2018 The Bitcoin Core developers | # Copyright (c) 2018 The Bitcoin Core developers | ||||
# Distributed under the MIT software license, see the accompanying | # Distributed under the MIT software license, see the accompanying | ||||
# file COPYING or http://www.opensource.org/licenses/mit-license.php. | # file COPYING or http://www.opensource.org/licenses/mit-license.php. | ||||
"""Test the deriveaddresses rpc call.""" | """Test the deriveaddresses rpc call.""" | ||||
from test_framework.test_framework import BitcoinTestFramework | from test_framework.test_framework import BitcoinTestFramework | ||||
from test_framework.descriptors import descsum_create | from test_framework.descriptors import descsum_create | ||||
from test_framework.util import assert_equal, assert_raises_rpc_error | from test_framework.util import assert_equal, assert_raises_rpc_error | ||||
class DeriveaddressesTest(BitcoinTestFramework): | class DeriveaddressesTest(BitcoinTestFramework): | ||||
def set_test_params(self): | def set_test_params(self): | ||||
self.num_nodes = 1 | self.num_nodes = 1 | ||||
self.supports_cli = 1 | self.supports_cli = 1 | ||||
def run_test(self): | def run_test(self): | ||||
assert_raises_rpc_error(-5, "Invalid descriptor", | assert_raises_rpc_error(-5, "Missing checksum", | ||||
self.nodes[0].deriveaddresses, "a") | self.nodes[0].deriveaddresses, "a") | ||||
descriptor = "pkh(tprv8ZgxMBicQKsPd7Uf69XL1XwhmjHopUGep8GuEiJDZmbQz6o58LninorQAfcKZWARbtRtfnLcJ5MQ2AtHcQJCCRUcMRvmDUjyEmNUWwx8UbK/1/1/0)#rdfjd0a9" | descriptor = "pkh(tprv8ZgxMBicQKsPd7Uf69XL1XwhmjHopUGep8GuEiJDZmbQz6o58LninorQAfcKZWARbtRtfnLcJ5MQ2AtHcQJCCRUcMRvmDUjyEmNUWwx8UbK/1/1/0)#rdfjd0a9" | ||||
address = "bchreg:qzgrvmwc8vevauc25j86hgfpduz8j98yvvyr0qx0ew" | address = "bchreg:qzgrvmwc8vevauc25j86hgfpduz8j98yvvyr0qx0ew" | ||||
assert_equal(self.nodes[0].deriveaddresses(descriptor), [address]) | assert_equal(self.nodes[0].deriveaddresses(descriptor), [address]) | ||||
descriptor = descriptor[:-9] | descriptor = descriptor[:-9] | ||||
assert_raises_rpc_error(-5, | assert_raises_rpc_error(-5, | ||||
"Invalid descriptor", | "Missing checksum", | ||||
self.nodes[0].deriveaddresses, | self.nodes[0].deriveaddresses, | ||||
descriptor) | descriptor) | ||||
descriptor_pubkey = "pkh(tpubD6NzVbkrYhZ4WaWSyoBvQwbpLkojyoTZPRsgXELWz3Popb3qkjcJyJUGLnL4qHHoQvao8ESaAstxYSnhyswJ76uZPStJRJCTKvosUCJZL5B/1/1/0)#7st8eans" | descriptor_pubkey = "pkh(tpubD6NzVbkrYhZ4WaWSyoBvQwbpLkojyoTZPRsgXELWz3Popb3qkjcJyJUGLnL4qHHoQvao8ESaAstxYSnhyswJ76uZPStJRJCTKvosUCJZL5B/1/1/0)#7st8eans" | ||||
address = "bchreg:qzgrvmwc8vevauc25j86hgfpduz8j98yvvyr0qx0ew" | address = "bchreg:qzgrvmwc8vevauc25j86hgfpduz8j98yvvyr0qx0ew" | ||||
assert_equal(self.nodes[0].deriveaddresses( | assert_equal(self.nodes[0].deriveaddresses( | ||||
descriptor_pubkey), [address]) | descriptor_pubkey), [address]) | ||||
▲ Show 20 Lines • Show All 76 Lines • Show Last 20 Lines |