From db4ba26dced535ac60465a71c7ff939305b3ae6a Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Fri, 8 Mar 2024 15:32:54 +0000 Subject: [PATCH] update testing for MMGen Wallet v14.1.dev19 --- mmgen_node_tools/data/version | 2 +- setup.cfg | 2 +- test/cmdtest_py_d/ct_misc.py | 13 ++++++------- test/cmdtest_py_d/ct_regtest.py | 26 +++++++++++++++++--------- 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/mmgen_node_tools/data/version b/mmgen_node_tools/data/version index 0ed23d0..3170c6e 100644 --- a/mmgen_node_tools/data/version +++ b/mmgen_node_tools/data/version @@ -1 +1 @@ -3.3.dev2 +3.3.dev3 diff --git a/setup.cfg b/setup.cfg index 82704a4..f0c6629 100644 --- a/setup.cfg +++ b/setup.cfg @@ -28,7 +28,7 @@ python_requires = >=3.9 include_package_data = True install_requires = - mmgen-wallet>=14.1.dev8 + mmgen-wallet>=14.1.dev19 pyyaml yahooquery diff --git a/test/cmdtest_py_d/ct_misc.py b/test/cmdtest_py_d/ct_misc.py index 3dbac50..b4b83e9 100755 --- a/test/cmdtest_py_d/ct_misc.py +++ b/test/cmdtest_py_d/ct_misc.py @@ -106,10 +106,11 @@ class CmdTestScripts(CmdTestBase): shutil.copy2(os.path.join(refdir,'ticker-btc.json'),self.tmpdir) return 'ok' - def ticker(self,args=[],expect_list=None,cached=True): + def ticker(self, args=[], expect_list=None, cached=True, exit_val=None): t = self.spawn( f'mmnode-ticker', - (['--cached-data'] if cached else []) + self.ticker_args + args ) + (['--cached-data'] if cached else []) + self.ticker_args + args, + exit_val = exit_val) if expect_list: t.match_expect_list(expect_list) return t @@ -120,12 +121,11 @@ class CmdTestScripts(CmdTestBase): return t def ticker2(self): - t = self.ticker(cached=False) + t = self.ticker(cached=False, exit_val=3) if not cfg.skipping_deps: t.expect('Creating') t.expect('Creating') - ret = t.expect(['proxy host could not be resolved','ProxyError']) - t.req_exit_val = 3 if ret == 0 else 1 + t.expect(['proxy host could not be resolved', 'ProxyError']) return t def ticker3(self): @@ -165,9 +165,8 @@ class CmdTestScripts(CmdTestBase): return t def ticker6(self): - t = self.ticker( ['--wide','--portfolio'], None ) + t = self.ticker(['--wide','--portfolio'], None, exit_val=1) t.expect('No portfolio') - t.req_exit_val = 1 return t def ticker7(self): # demo diff --git a/test/cmdtest_py_d/ct_regtest.py b/test/cmdtest_py_d/ct_regtest.py index e554930..c89f8fa 100755 --- a/test/cmdtest_py_d/ct_regtest.py +++ b/test/cmdtest_py_d/ct_regtest.py @@ -39,6 +39,8 @@ class CmdTestRegtest(CmdTestBase): tmpdir_nums = [1] color = True deterministic = False + bdb_wallet = True + cmd_group_in = ( ('setup', 'regtest mode setup'), ('subgroup.netrate', []), @@ -111,20 +113,27 @@ class CmdTestRegtest(CmdTestBase): die(2,'--testnet and --regtest options incompatible with regtest test suite') self.proto = init_proto( cfg, self.proto.coin, network='regtest', need_amt=True ) self.addrs = gen_addrs(self.proto,'regtest',[1,2,3,4,5]) - self.regtest = MMGenRegtest(cfg,self.proto.coin) + + self.use_bdb_wallet = self.bdb_wallet or self.proto.coin != 'BTC' + self.regtest = MMGenRegtest(cfg, self.proto.coin, bdb_wallet=self.use_bdb_wallet) def setup(self): stop_test_daemons(self.proto.network_id,force=True,remove_datadir=True) from shutil import rmtree - try: rmtree(joinpath(self.tr.data_dir,'regtest')) - except: pass - t = self.spawn('mmgen-regtest',['-n','setup']) + try: + rmtree(joinpath(self.tr.data_dir,'regtest')) + except: + pass + t = self.spawn( + 'mmgen-regtest', + (['--bdb-wallet'] if self.use_bdb_wallet else []) + + ['--setup-no-stop-daemon', 'setup']) for s in ('Starting','Creating','Creating','Creating','Mined','Setup complete'): t.expect(s) return t - def netrate(self,add_args,expect_str): - t = self.spawn( 'mmnode-netrate', args1 + add_args ) + def netrate(self, add_args, expect_str, exit_val=None): + t = self.spawn('mmnode-netrate', args1 + add_args, exit_val=exit_val) t.expect(expect_str,regex=True) return t @@ -132,11 +141,10 @@ class CmdTestRegtest(CmdTestBase): return self.netrate( ['--help'], 'USAGE:.*' ) def netrate2(self): - t = self.netrate( [], r'sent:.*' ) + t = self.netrate([], r'sent:.*', exit_val=-15) t.kill(15) if sys.platform == 'win32': return 'ok' - t.req_exit_val = -15 return t def halving_calculator(self,add_args,expect_list): @@ -326,7 +334,7 @@ class CmdTestRegtest(CmdTestBase): return await do_tx( [{ 'txid': tx_input['txid'], 'vout': 0 }], outputs, - r.miner_wif ) + await r.miner_wif) async def do_tx2(tx,pairno): fee = fees[pairno]