@@ -228,6 +228,22 @@ def parse_args(self):
228
228
229
229
PortSeed .n = self .options .port_seed
230
230
231
+ def set_binary_paths (self ):
232
+ """Update self.options with the paths of all binaries from environment variables or their default values"""
233
+
234
+ binaries = {
235
+ "bitcoind" : ("bitcoind" , "BITCOIND" ),
236
+ "bitcoin-cli" : ("bitcoincli" , "BITCOINCLI" ),
237
+ "bitcoin-util" : ("bitcoinutil" , "BITCOINUTIL" ),
238
+ }
239
+ for binary , [attribute_name , env_variable_name ] in binaries .items ():
240
+ default_filename = os .path .join (
241
+ self .config ["environment" ]["BUILDDIR" ],
242
+ "src" ,
243
+ binary + self .config ["environment" ]["EXEEXT" ],
244
+ )
245
+ setattr (self .options , attribute_name , os .getenv (env_variable_name , default = default_filename ))
246
+
231
247
def setup (self ):
232
248
"""Call this method to start up the test framework object with options set."""
233
249
@@ -237,24 +253,7 @@ def setup(self):
237
253
238
254
config = self .config
239
255
240
- fname_bitcoind = os .path .join (
241
- config ["environment" ]["BUILDDIR" ],
242
- "src" ,
243
- "bitcoind" + config ["environment" ]["EXEEXT" ],
244
- )
245
- fname_bitcoincli = os .path .join (
246
- config ["environment" ]["BUILDDIR" ],
247
- "src" ,
248
- "bitcoin-cli" + config ["environment" ]["EXEEXT" ],
249
- )
250
- fname_bitcoinutil = os .path .join (
251
- config ["environment" ]["BUILDDIR" ],
252
- "src" ,
253
- "bitcoin-util" + config ["environment" ]["EXEEXT" ],
254
- )
255
- self .options .bitcoind = os .getenv ("BITCOIND" , default = fname_bitcoind )
256
- self .options .bitcoincli = os .getenv ("BITCOINCLI" , default = fname_bitcoincli )
257
- self .options .bitcoinutil = os .getenv ("BITCOINUTIL" , default = fname_bitcoinutil )
256
+ self .set_binary_paths ()
258
257
259
258
os .environ ['PATH' ] = os .pathsep .join ([
260
259
os .path .join (config ['environment' ]['BUILDDIR' ], 'src' ),
0 commit comments