From a4ac1c0fbd1a969d279ffa98f0c5a7a82b6cbfe0 Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Sat, 6 Apr 2024 07:03:29 +0000 Subject: [PATCH] unit_tests.py: new test: misc.xmrwallet_uarg_info --- test/unit_tests_d/ut_misc.py | 39 +++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/test/unit_tests_d/ut_misc.py b/test/unit_tests_d/ut_misc.py index 745a664d..2ef3d1d8 100755 --- a/test/unit_tests_d/ut_misc.py +++ b/test/unit_tests_d/ut_misc.py @@ -4,10 +4,47 @@ test.unit_tests_d.ut_misc: miscellaneous unit tests for the MMGen suite """ +import re +from collections import namedtuple + +from mmgen.color import yellow, blue +from ..include.common import vmsg + class unit_tests: + def xmrwallet_uarg_info(self,name,ut): # WIP + from mmgen.xmrwallet import xmrwallet_uarg_info as uarg_info + vs = namedtuple('vector_data', ['text', 'groups']) + fs = '{:16} {}' + + vmsg(blue(' ' + fs.format('ID','ANNOT'))) + for k,v in uarg_info.items(): + vmsg(' ' + fs.format(k, v[0])) + + vectors = { + 'sweep_spec': ( + vs('1:2', "('1', '2', None, None)"), + vs('1:2,3', "('1', '2', '3', None)"), + vs('1:2,3:4', "('1', '2', '3', '4')"), + ), + } + + vmsg('') + for k,v in uarg_info.items(): + vmsg(f' {k}') + if k in vectors: + vmsg(f' pat: {v.pat}') + vmsg(f' vectors:') + for vec in vectors[k]: + m = re.match(v.pat, vec.text) + vmsg(f' {vec.text:10} ==> {m.groups()}') + assert str(m.groups()) == vec.groups + else: + vmsg(yellow(' TBD')) + + return True + def pyversion(self,name,ut): - from ..include.common import vmsg from mmgen.pyversion import PythonVersion,python_version ver = {}