X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2Fautogen%2FRegenerator.py;h=4ed123ae7c98127b3d6f8dc92e94d7c145f8b5f8;hp=85e8b60dd5d7ee989b9e3973da66498d6c1a50f5;hb=298d0a61d75cded31fc0f09d408e7b3e3f9ee4f7;hpb=7dda8f57f750c253d3c96ac1b02a84c58e36a6d8 diff --git a/resources/libraries/python/autogen/Regenerator.py b/resources/libraries/python/autogen/Regenerator.py index 85e8b60dd5..4ed123ae7c 100644 --- a/resources/libraries/python/autogen/Regenerator.py +++ b/resources/libraries/python/autogen/Regenerator.py @@ -36,7 +36,7 @@ class Regenerator(object): """ self.testcase_class = testcase_class - def regenerate_glob(self, pattern, is_ip6=False, tc_kwargs_list=None): + def regenerate_glob(self, pattern, protocol="ip4", tc_kwargs_list=None): """Regenerate files matching glob pattern based on arguments. In the current working directory, find all files matching @@ -56,6 +56,19 @@ class Regenerator(object): :type tc_kwargs_list: list of tuple or None """ + protocol_to_min_framesize = { + "ip4": 64, + "ip6": 78, + "vxlan+ip4": 114 + } + + def get_suite_id(filename): + dash_split = filename.split("-", 1) + if len(dash_split[0]) <= 4: + # It was something like "2n1l", we need one more split. + dash_split = dash_split[1].split("-", 1) + return dash_split[1].split(".", 1)[0] + def add_testcase(file_out, num, **kwargs): file_out.write(testcase.generate(num=num, **kwargs)) return num + 1 @@ -66,8 +79,8 @@ class Regenerator(object): num = add_testcase(file_out, num, **tc_kwargs) print "Regenerator starts at {cwd}".format(cwd=getcwd()) - min_framesize = 78 if is_ip6 else 64 - kwargs_list = tc_kwargs_list if tc_kwargs_list is not None else [ + min_framesize = protocol_to_min_framesize[protocol] + kwargs_list = tc_kwargs_list if tc_kwargs_list else [ {"framesize": min_framesize, "phy_cores": 1}, {"framesize": min_framesize, "phy_cores": 2}, {"framesize": min_framesize, "phy_cores": 4}, @@ -86,7 +99,7 @@ class Regenerator(object): text = file_in.read() text_prolog = "".join(text.partition("*** Test Cases ***")[:-1]) # TODO: Make the following work for 2n suites. - suite_id = filename.split("-", 1)[1].split(".", 1)[0] + suite_id = get_suite_id(filename) print "Regenerating suite_id:", suite_id testcase = self.testcase_class(suite_id) with open(filename, "w") as file_out: