CmdTestBase: new extra_daemons attribute
This commit is contained in:
parent
24a22e63e1
commit
78bd55b3bb
4 changed files with 18 additions and 11 deletions
|
|
@ -181,12 +181,12 @@ class CmdTestAutosignBase(CmdTestBase):
|
|||
|
||||
def start_daemons(self):
|
||||
self.spawn(msg_only=True)
|
||||
start_test_daemons(*self.network_ids)
|
||||
start_test_daemons(*(self.network_ids + self.extra_daemons))
|
||||
return 'ok'
|
||||
|
||||
def stop_daemons(self):
|
||||
self.spawn(msg_only=True)
|
||||
stop_test_daemons(*self.network_ids, remove_datadir=True)
|
||||
stop_test_daemons(*(self.network_ids + self.extra_daemons), remove_datadir=True)
|
||||
return 'ok'
|
||||
|
||||
def run_setup(
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ class CmdTestBase:
|
|||
skip_cmds = ()
|
||||
test_name = None
|
||||
is_helper = False
|
||||
extra_daemons = []
|
||||
|
||||
def __init__(self, cfg, trunner, cfgs, spawn):
|
||||
if hasattr(self, 'name'): # init may called multiple times
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ from ..include.common import (
|
|||
read_from_file,
|
||||
silence,
|
||||
end_silence,
|
||||
start_test_daemons,
|
||||
stop_test_daemons,
|
||||
strip_ansi_escapes
|
||||
)
|
||||
from .include.common import get_file_with_ext
|
||||
|
|
@ -49,6 +51,8 @@ from .base import CmdTestBase
|
|||
def stop_daemons(self):
|
||||
for v in self.users.values():
|
||||
v.md.stop()
|
||||
if self.extra_daemons:
|
||||
stop_test_daemons(*self.extra_daemons, remove_datadir=True, verbose=True)
|
||||
|
||||
def stop_miner_wallet_daemon(self):
|
||||
asyncio.run(self.users['miner'].wd_rpc.stop_daemon())
|
||||
|
|
@ -843,6 +847,8 @@ class CmdTestXMRWallet(CmdTestBase):
|
|||
for v in self.users.values():
|
||||
run(['mkdir', '-p', v.daemon_datadir])
|
||||
v.md.start()
|
||||
if self.extra_daemons:
|
||||
start_test_daemons(*self.extra_daemons, verbose=True)
|
||||
|
||||
def stop_daemons(self):
|
||||
self.spawn(msg_only=True)
|
||||
|
|
|
|||
|
|
@ -288,23 +288,23 @@ def end_msg(t):
|
|||
('' if cfg.test_suite_deterministic else f', elapsed time: {t//60:02d}:{t%60:02d}')
|
||||
))
|
||||
|
||||
def start_test_daemons(*network_ids, remove_datadir=False):
|
||||
def start_test_daemons(*network_ids, remove_datadir=False, verbose=False):
|
||||
if not cfg.no_daemon_autostart:
|
||||
return test_daemons_ops(*network_ids, op='start', remove_datadir=remove_datadir)
|
||||
return test_daemons_ops(*network_ids, op='start', remove_datadir=remove_datadir, verbose=verbose)
|
||||
|
||||
def stop_test_daemons(*network_ids, force=False, remove_datadir=False):
|
||||
def stop_test_daemons(*network_ids, force=False, remove_datadir=False, verbose=False):
|
||||
if force or not cfg.no_daemon_stop:
|
||||
return test_daemons_ops(*network_ids, op='stop', remove_datadir=remove_datadir)
|
||||
return test_daemons_ops(*network_ids, op='stop', remove_datadir=remove_datadir, verbose=verbose)
|
||||
|
||||
def restart_test_daemons(*network_ids, remove_datadir=False):
|
||||
if not stop_test_daemons(*network_ids, remove_datadir=remove_datadir):
|
||||
def restart_test_daemons(*network_ids, remove_datadir=False, verbose=False):
|
||||
if not stop_test_daemons(*network_ids, remove_datadir=remove_datadir, verbose=verbose):
|
||||
return False
|
||||
return start_test_daemons(*network_ids, remove_datadir=remove_datadir)
|
||||
return start_test_daemons(*network_ids, remove_datadir=remove_datadir, verbose=verbose)
|
||||
|
||||
def test_daemons_ops(*network_ids, op, remove_datadir=False):
|
||||
def test_daemons_ops(*network_ids, op, remove_datadir=False, verbose=False):
|
||||
if not cfg.no_daemon_autostart:
|
||||
from mmgen.daemon import CoinDaemon
|
||||
silent = not (cfg.verbose or cfg.exact_output)
|
||||
silent = not (verbose or cfg.verbose or cfg.exact_output)
|
||||
ret = False
|
||||
for network_id in network_ids:
|
||||
d = CoinDaemon(cfg, network_id=network_id, test_suite=True)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue