cmdtest.py ethdev, rune: add user component to tw path

This commit is contained in:
The MMGen Project 2025-11-15 09:50:21 +00:00
commit 967d17c06e
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
6 changed files with 26 additions and 10 deletions

View file

@ -84,6 +84,7 @@ class TwCtlWithStore(TwCtl, metaclass=AsyncInit):
def get_tw_dir(cls, cfg, proto):
return Path(
cfg.data_dir_root,
cfg.test_user,
'altcoins',
proto.coin.lower(),
('' if proto.network == 'mainnet' else proto.network),

View file

@ -128,6 +128,7 @@ class CmdTestEthBump(CmdTestEthBumpMethods, CmdTestEthSwapMethods, CmdTestSwapMe
token_fund_amt = 1000
cross_group = 'ethbump_ltc'
cross_coin = 'ltc'
add_eth_opts = ['--bob']
cmd_group_in = (
('subgroup.ltc_init', []),
@ -312,10 +313,10 @@ class CmdTestEthBump(CmdTestEthBumpMethods, CmdTestEthSwapMethods, CmdTestSwapMe
return self._swaptxsend()
def swaptxbump1(self):
return self._swaptxbump('41.1G')
return self._swaptxbump('41.1G', add_opts=['--bob'])
def swaptxbump2(self):
return self._swaptxbump('1.9G', output_args=[f'{dfl_sid}:E:12,4444.3333'])
return self._swaptxbump('1.9G', add_opts=['--bob'], output_args=[f'{dfl_sid}:E:12,4444.3333'])
def bal1(self):
return self._bal_check(pat=rf'{dfl_sid}:E:1\s+99012\.9999727\s')

View file

@ -130,6 +130,8 @@ coin = cfg.coin
class CmdTestEthdevMethods:
add_eth_opts = []
def _del_addr(self, addr):
t = self.spawn('mmgen-tool', self.eth_opts + ['remove_address', addr])
t.expect(f"'{addr}' deleted")
@ -153,7 +155,10 @@ class CmdTestEthdevMethods:
exit_val = None):
ext = ext.format('' if self.cfg.debug_utf8 else '')
fn = self.get_file_with_ext(ext, no_dot=True, delete=False)
t = self.spawn('mmgen-addrimport', ['--regtest=1'] + add_args + [fn], exit_val=exit_val)
t = self.spawn(
'mmgen-addrimport',
['--regtest=1'] + self.add_eth_opts + add_args + [fn],
exit_val=exit_val)
if bad_input:
return t
t.expect('Importing')
@ -223,7 +228,9 @@ class CmdTestEthdevMethods:
def _bal_check(self, *, pat, add_opts=[]):
self.mining_delay()
t = self.spawn('mmgen-tool', ['--regtest=1'] + add_opts + ['twview', 'wide=1'])
t = self.spawn(
'mmgen-tool',
['--regtest=1'] + self.add_eth_opts + add_opts + ['twview', 'wide=1'])
text = t.read(strip_color=True)
assert re.search(pat, text, re.DOTALL), f'output failed to match regex {pat}'
return t
@ -721,8 +728,8 @@ class CmdTestEthdev(CmdTestEthdevMethods, CmdTestBase, CmdTestShared):
global coin
coin = cfg.coin
self.eth_opts = [f'--outdir={self.tmpdir}', '--regtest=1', '--quiet']
self.eth_opts_noquiet = [f'--outdir={self.tmpdir}', '--regtest=1']
self.eth_opts = [f'--outdir={self.tmpdir}', '--regtest=1', '--quiet'] + self.add_eth_opts
self.eth_opts_noquiet = [f'--outdir={self.tmpdir}', '--regtest=1'] + self.add_eth_opts
from mmgen.protocol import init_proto
self.proto = init_proto(cfg, network_id=self.proto.coin+'_rt', need_amt=True)
@ -947,7 +954,9 @@ class CmdTestEthdev(CmdTestEthdevMethods, CmdTestBase, CmdTestShared):
return self._addrimport()
def _addrimport_one_addr(self, addr=None, extra_args=[]):
t = self.spawn('mmgen-addrimport', ['--regtest=1', '--quiet', f'--address={addr}'] + extra_args)
t = self.spawn(
'mmgen-addrimport',
['--regtest=1', '--quiet', f'--address={addr}'] + self.add_eth_opts + extra_args)
t.expect('OK')
return t

View file

@ -88,7 +88,8 @@ class CmdTestEthSwapMethods:
token_addr = self.read_from_tmpfile('token_addr1').strip()
return self.spawn(
'mmgen-addrimport',
['--quiet', '--regtest=1', f'--token-addr={token_addr}', f'--address={eth_inbound_addr}'])
['--quiet', '--regtest=1', f'--token-addr={token_addr}', f'--address={eth_inbound_addr}']
+ self.add_eth_opts)
def token_bal1(self):
return self._token_bal_check(pat=rf'{dfl_sid}:E:1\s+{self.token_fund_amt}\s')
@ -322,6 +323,7 @@ class CmdTestEthSwapEth(CmdTestEthSwapMethods, CmdTestSwapMethods, CmdTestEthdev
fund_amt = '123.456'
token_fund_amt = 1000
is_helper = True
add_eth_opts = ['--bob']
bals = lambda self, k: {
'swap1': [('98831F3A:E:1', '123.456')],

View file

@ -84,10 +84,12 @@ class CmdTestRune(CmdTestEthdevMethods, CmdTestBase, CmdTestShared):
return self._addrimport()
def twview(self):
return self.spawn('mmgen-tool', self.rune_opts + ['twview'])
return self.spawn('mmgen-tool', self.rune_opts + self.add_eth_opts + ['twview'])
def bal_refresh(self):
t = self.spawn('mmgen-tool', self.rune_opts + ['listaddresses', 'interactive=1'])
t = self.spawn(
'mmgen-tool',
self.rune_opts + self.add_eth_opts + ['listaddresses', 'interactive=1'])
t.expect(self.menu_prompt, 'R')
t.expect('menu): ', '3\n')
t.expect('(y/N): ', 'y')

View file

@ -94,6 +94,7 @@ class CmdTestRuneSwapRune(CmdTestSwapMethods, CmdTestRune):
input_sels_prompt = 'to spend from: '
is_helper = True
txhex_chksum = '34980b41'
add_eth_opts = ['--bob']
cmd_group_in = CmdTestRune.cmd_group_in + (
# rune_swap: