minor changes and fixes

This commit is contained in:
The MMGen Project 2022-05-23 16:28:56 +00:00
commit 310f6f59c5
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
4 changed files with 25 additions and 18 deletions

View file

@ -281,8 +281,8 @@ class Int(int,Hilite,InitErrors):
cls.method_not_implemented()
@classmethod
def colorize(cls,n,color=True):
return super().colorize(repr(n),color=color)
def colorize(cls,n,**kwargs):
return super().colorize(repr(n),**kwargs)
class MMGenIdx(Int):
min_val = 1
@ -316,6 +316,12 @@ class HexStr(str,Hilite,InitErrors):
except Exception as e:
return cls.init_fail(e,s)
def truncate(self,width,color=True,color_override=''):
return self.colorize(
self if width == None or width >= self.width else self[:width-2] + '..',
color = color,
color_override = color_override )
class CoinTxID(HexStr):
color,width,hexcase = ('purple',64,'lower')

View file

@ -46,7 +46,7 @@ class Hilite:
# 'width' is screen width (greater than len(s) for CJK strings)
# 'append_chars' and 'encl' must consist of single-width chars only
def fmtc(cls,s,width=None,color=False,encl='',trunc_ok=None,
center=False,nullrepl='',append_chars='',append_color=False):
center=False,nullrepl='',append_chars='',append_color=False,color_override=''):
s_wide_count = len([1 for ch in s if unicodedata.east_asian_width(ch) in ('F','W')])
if encl:
a,b = list(encl)
@ -77,7 +77,7 @@ class Hilite:
append_chars.ljust(width-len(s)-s_wide_count),
color_override = append_color ))
else:
return cls.colorize(s.ljust(width-s_wide_count),color=color)
return cls.colorize(s.ljust(width-s_wide_count),color=color,color_override=color_override)
@classmethod
def colorize(cls,s,color=True,color_override=''):
@ -88,11 +88,11 @@ class Hilite:
return self.fmtc(self,*args,**kwargs)
@classmethod
def hlc(cls,s,color=True,encl=''):
def hlc(cls,s,color=True,encl='',color_override=''):
if encl:
assert isinstance(encl,str) and len(encl) == 2, "'encl' must be 2-character str"
s = encl[0] + s + encl[1]
return cls.colorize(s,color=color)
return cls.colorize(s,color=color,color_override=color_override)
def hl(self,*args,**kwargs):
assert args == () # forbid invocation w/o keywords

View file

@ -126,7 +126,7 @@ class TestSuiteAutosignBase(TestSuiteBase):
self.bad_msg_count = 0
def __del__(self):
if g.platform == 'win':
if g.platform == 'win' or self.tr == None:
return
if self.simulate or not self.live:
LEDControl.delete_dummy_control_files()

View file

@ -48,13 +48,13 @@ rt_data = {
'rtBals': {
'btc': ('499.9999488','399.9998282','399.9998147','399.9996877',
'52.99980410','946.99933647','999.99914057','52.9999',
'946.99933647'),
'946.99933647','0.4169328'),
'bch': ('499.9999484','399.9999194','399.9998972','399.9997692',
'46.78890380','953.20966920','999.99857300','46.789',
'953.2096692'),
'953.2096692','0.4169328'),
'ltc': ('5499.99744','5399.994425','5399.993885','5399.987535',
'52.98520500','10946.93753500','10999.92274000','52.99',
'10946.937535'),
'10946.937535','0.41364'),
},
'rtBals_gb': {
'btc': {
@ -590,8 +590,7 @@ class TestSuiteRegtest(TestSuiteBase,TestSuiteShared):
def bob_twview4(self):
sid = self._user_sid('bob')
amt = ('0.4169328','0.41364')[self.proto.coin=='LTC']
return self.user_twview('bob',chk=(sid+':L:5',amt),sort='twmmid')
return self.user_twview('bob',chk=(sid+':L:5',rtBals[9]),sort='twmmid')
def bob_getbalance(self,bals,confs=1):
for i in (0,1,2):
@ -839,25 +838,27 @@ class TestSuiteRegtest(TestSuiteBase,TestSuiteShared):
self.write_to_tmpfile('non-mmgen.addrs','\n'.join([a[1] for a in pairs])+'\n')
return self.user_txdo('bob',rtFee[4],[pairs[0][1]],'3')
def user_import(self,user,args):
def user_import(self,user,args,nAddr):
t = self.spawn('mmgen-addrimport',['--'+user]+args)
if g.debug:
t.expect("Type uppercase 'YES' to confirm: ",'YES\n')
t.expect('Importing')
t.expect('OK')
t.expect(f'Importing {nAddr} address')
if '--rescan' in args:
for i in range(nAddr):
t.expect('OK')
return t
def bob_import_addr(self):
addr = self.read_from_tmpfile('non-mmgen.addrs').split()[0]
return self.user_import('bob',['--quiet','--address='+addr])
return self.user_import('bob',['--quiet','--address='+addr],nAddr=1)
def bob_import_list(self):
addrfile = joinpath(self.tmpdir,'non-mmgen.addrs')
return self.user_import('bob',['--quiet','--addrlist',addrfile])
return self.user_import('bob',['--quiet','--addrlist',addrfile],nAddr=5)
def bob_import_list_rescan(self):
addrfile = joinpath(self.tmpdir,'non-mmgen.addrs')
return self.user_import('bob',['--quiet','--rescan','--addrlist',addrfile])
return self.user_import('bob',['--quiet','--rescan','--addrlist',addrfile],nAddr=5)
def bob_split2(self):
addrs = self.read_from_tmpfile('non-mmgen.addrs').split()