mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-09-11 21:20:39 +02:00
This RPC has no helpful use while being both dangerous and a maintenance burden. Despite what the name says, it allows the deletion of arbitrary transactions, and `importprunedfunds` does not allow the importing of transactions not belonging to the user, and `listtransactions` does not list transactions not belonging to the wallet, so this RPC can only be used to delete transactions actually belonging to the wallet, and in the unlikely event that transactions not belonging to the wallet are present, they cause no harm except for occupying a few bytes on the users disk.
46 lines
1.9 KiB
Python
Executable File
46 lines
1.9 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
# Copyright (c) 2017-present The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
"""Test deprecation of RPC calls."""
|
|
from test_framework.test_framework import BitcoinTestFramework
|
|
from test_framework.util import assert_raises_rpc_error
|
|
|
|
|
|
class DeprecatedRpcTest(BitcoinTestFramework):
|
|
def set_test_params(self):
|
|
self.num_nodes = 1
|
|
self.setup_clean_chain = True
|
|
self.extra_args = [[]]
|
|
self.uses_wallet = None
|
|
|
|
def run_test(self):
|
|
# This test should be used to verify the errors of the currently
|
|
# deprecated RPC methods (without the -deprecatedrpc flag) until
|
|
# such RPCs are fully removed. For example:
|
|
#
|
|
# self.log.info("Test generate RPC")
|
|
# assert_raises_rpc_error(-32, 'The wallet generate rpc method is deprecated', self.nodes[0].generate, 1)
|
|
#
|
|
# Please ensure that for all the RPC methods tested here, there is
|
|
# at least one other functional test that still tests the RPCs
|
|
# functionality using the respective -deprecatedrpc flag.
|
|
|
|
# Please don't delete nor modify this comment
|
|
self.log.info("Tests for deprecated RPC methods (if any)")
|
|
if self.is_wallet_compiled():
|
|
self.log.info("Tests for deprecated wallet-related RPC methods (if any)")
|
|
self.nodes[0].createwallet("ancient_wallet")
|
|
wallet = self.nodes[0].get_wallet_rpc("ancient_wallet")
|
|
|
|
self.log.info("Test removeprunedfunds deprecation")
|
|
assert_raises_rpc_error(
|
|
-32, "Start bitcoind with the `-deprecatedrpc=removeprunedfunds`",
|
|
wallet.removeprunedfunds,
|
|
"fakeargument"
|
|
)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
DeprecatedRpcTest(__file__).main()
|