Skip to content

Commit 242aed7

Browse files
committed
tests: Add a --legacy-wallet that is mutually exclusive with --descriptors
Although legacy wallet is still the default, for future use, add a --legacy-wallet option to the test framework. Additional tests for descriptor wallets have been enabled with the --descriptors option. Tests that must be legacy wallet only are being started with --legacy-wallet. Even though this option does not currently do anything, this will be helpful in the future when descriptor wallets become the default.
1 parent 388053e commit 242aed7

File tree

2 files changed

+36
-10
lines changed

2 files changed

+36
-10
lines changed

test/functional/test_framework/test_framework.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,9 +183,14 @@ def parse_args(self):
183183
help="run nodes under the valgrind memory error detector: expect at least a ~10x slowdown, valgrind 3.14 or later required")
184184
parser.add_argument("--randomseed", type=int,
185185
help="set a random seed for deterministically reproducing a previous test run")
186-
parser.add_argument("--descriptors", default=False, action="store_true",
187-
help="Run test using a descriptor wallet")
188186
parser.add_argument('--timeout-factor', dest="timeout_factor", type=float, default=1.0, help='adjust test timeouts by a factor. Setting it to 0 disables all timeouts')
187+
188+
group = parser.add_mutually_exclusive_group()
189+
group.add_argument("--descriptors", default=False, action="store_true",
190+
help="Run test using a descriptor wallet", dest='descriptors')
191+
group.add_argument("--legacy-wallet", default=False, action="store_false",
192+
help="Run test using legacy wallets", dest='descriptors')
193+
189194
self.add_options(parser)
190195
self.options = parser.parse_args()
191196
self.options.previous_releases_path = previous_releases_path

test/functional/test_runner.py

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,9 @@
9595
'feature_maxuploadtarget.py',
9696
'feature_block.py',
9797
'rpc_fundrawtransaction.py',
98+
'rpc_fundrawtransaction.py --descriptors',
9899
'p2p_compactblocks.py',
99-
'feature_segwit.py',
100+
'feature_segwit.py --legacy-wallet',
100101
# vv Tests less than 2m vv
101102
'wallet_basic.py',
102103
'wallet_basic.py --descriptors',
@@ -106,19 +107,24 @@
106107
'p2p_timeouts.py',
107108
'p2p_tx_download.py',
108109
'mempool_updatefromblock.py',
109-
'wallet_dump.py',
110+
'wallet_dump.py --legacy-wallet',
110111
'wallet_listtransactions.py',
112+
'wallet_listtransactions.py --descriptors',
111113
'feature_taproot.py',
112114
# vv Tests less than 60s vv
113115
'p2p_sendheaders.py',
114-
'wallet_importmulti.py',
116+
'wallet_importmulti.py --legacy-wallet',
115117
'mempool_limit.py',
116118
'rpc_txoutproof.py',
117119
'wallet_listreceivedby.py',
120+
'wallet_listreceivedby.py --descriptors',
118121
'wallet_abandonconflict.py',
122+
'wallet_abandonconflict.py --descriptors',
119123
'feature_csv_activation.py',
120124
'rpc_rawtransaction.py',
125+
'rpc_rawtransaction.py --descriptors',
121126
'wallet_address_types.py',
127+
'wallet_address_types.py --descriptors',
122128
'feature_bip68_sequence.py',
123129
'p2p_feefilter.py',
124130
'feature_reindex.py',
@@ -132,6 +138,7 @@
132138
'mempool_resurrect.py',
133139
'wallet_txn_doublespend.py --mineblock',
134140
'tool_wallet.py',
141+
'tool_wallet.py --descriptors',
135142
'wallet_txn_clone.py',
136143
'wallet_txn_clone.py --segwit',
137144
'rpc_getchaintips.py',
@@ -147,8 +154,9 @@
147154
'wallet_multiwallet.py --usecli',
148155
'wallet_createwallet.py',
149156
'wallet_createwallet.py --usecli',
150-
'wallet_watchonly.py',
151-
'wallet_watchonly.py --usecli',
157+
'wallet_createwallet.py --descriptors',
158+
'wallet_watchonly.py --legacy-wallet',
159+
'wallet_watchonly.py --usecli --legacy-wallet',
152160
'wallet_reorgsrestore.py',
153161
'interface_http.py',
154162
'interface_rpc.py',
@@ -158,13 +166,16 @@
158166
'rpc_whitelist.py',
159167
'feature_proxy.py',
160168
'rpc_signrawtransaction.py',
169+
'rpc_signrawtransaction.py --descriptors',
161170
'wallet_groups.py',
162171
'p2p_addrv2_relay.py',
172+
'wallet_groups.py --descriptors',
163173
'p2p_disconnect_ban.py',
164174
'rpc_decodescript.py',
165175
'rpc_blockchain.py',
166176
'rpc_deprecated.py',
167177
'wallet_disable.py',
178+
'wallet_disable.py --descriptors',
168179
'p2p_addr_relay.py',
169180
'p2p_getaddr_caching.py',
170181
'p2p_getdata.py',
@@ -184,6 +195,7 @@
184195
'feature_assumevalid.py',
185196
'example_test.py',
186197
'wallet_txn_doublespend.py',
198+
'wallet_txn_doublespend.py --descriptors',
187199
'feature_backwards_compatibility.py',
188200
'wallet_txn_clone.py --mineblock',
189201
'feature_notifications.py',
@@ -197,17 +209,20 @@
197209
'feature_versionbits_warning.py',
198210
'rpc_preciousblock.py',
199211
'wallet_importprunedfunds.py',
212+
'wallet_importprunedfunds.py --descriptors',
200213
'p2p_leak_tx.py',
201214
'p2p_eviction.py',
202215
'rpc_signmessage.py',
203216
'rpc_generateblock.py',
204217
'rpc_generate.py',
205218
'wallet_balance.py',
219+
'wallet_balance.py --descriptors',
206220
'feature_nulldummy.py',
221+
'feature_nulldummy.py --descriptors',
207222
'mempool_accept.py',
208223
'mempool_expiry.py',
209-
'wallet_import_rescan.py',
210-
'wallet_import_with_label.py',
224+
'wallet_import_rescan.py --legacy-wallet',
225+
'wallet_import_with_label.py --legacy-wallet',
211226
'wallet_importdescriptors.py --descriptors',
212227
'wallet_upgradewallet.py',
213228
'rpc_bind.py --ipv4',
@@ -216,26 +231,32 @@
216231
'mining_basic.py',
217232
'feature_signet.py',
218233
'wallet_bumpfee.py',
219-
'wallet_implicitsegwit.py',
234+
'wallet_bumpfee.py --descriptors',
235+
'wallet_implicitsegwit.py --legacy-wallet',
220236
'rpc_named_arguments.py',
221237
'wallet_listsinceblock.py',
238+
'wallet_listsinceblock.py --descriptors',
222239
'p2p_leak.py',
223240
'wallet_encryption.py',
224241
'wallet_encryption.py --descriptors',
225242
'feature_dersig.py',
226243
'feature_cltv.py',
227244
'rpc_uptime.py',
228245
'wallet_resendwallettransactions.py',
246+
'wallet_resendwallettransactions.py --descriptors',
229247
'wallet_fallbackfee.py',
248+
'wallet_fallbackfee.py --descriptors',
230249
'rpc_dumptxoutset.py',
231250
'feature_minchainwork.py',
232251
'rpc_estimatefee.py',
233252
'rpc_getblockstats.py',
234253
'wallet_create_tx.py',
235254
'wallet_send.py',
255+
'wallet_create_tx.py --descriptors',
236256
'p2p_fingerprint.py',
237257
'feature_uacomment.py',
238258
'wallet_coinbase_category.py',
259+
'wallet_coinbase_category.py --descriptors',
239260
'feature_filelock.py',
240261
'feature_loadblock.py',
241262
'p2p_dos_header_tree.py',

0 commit comments

Comments
 (0)