X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Finput_data_parser.py;h=9e61c09d53ca89ef48f76b4b617f40c8df59f327;hb=544ca323e1bba3d318f2e706c20dfa6837106b59;hp=1f175bc3d82298a817ce382ecace88423bbbad74;hpb=a0af5950dd6b64b8068aed5c097e0f09170c1ca3;p=csit.git diff --git a/resources/tools/presentation/input_data_parser.py b/resources/tools/presentation/input_data_parser.py index 1f175bc3d8..9e61c09d53 100644 --- a/resources/tools/presentation/input_data_parser.py +++ b/resources/tools/presentation/input_data_parser.py @@ -1,4 +1,4 @@ -# Copyright (c) 2022 Cisco and/or its affiliates. +# Copyright (c) 2023 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -89,10 +89,10 @@ class ExecutionChecker(ResultVisitor): REGEX_VSAP_MSG_INFO = re.compile( r'Transfer Rate: (\d*.\d*).*\n' r'Latency: (\d*.\d*).*\n' - r'Completed requests: (\d*).*\n' - r'Failed requests: (\d*).*\n' + r'Connection [c|r]ps rate: (\d*).*\n' r'Total data transferred: (\d*).*\n' - r'Connection [cr]ps rate:\s*(\d*.\d*)' + r'Completed requests: (\d*).*\n' + r'Failed requests:\s*(\d*.\d*)' ) # Needed for CPS and PPS tests @@ -159,10 +159,6 @@ class ExecutionChecker(ResultVisitor): :type process_oper: bool """ - # Save the provided metadata - for key, val in metadata.items(): - self._data["metadata"][key] = val - # Mapping of TCs long names self._mapping = mapping @@ -205,6 +201,10 @@ class ExecutionChecker(ResultVisitor): "tests": dict() } + # Save the provided metadata + for key, val in metadata.items(): + self._data["metadata"][key] = val + @property def data(self): """Getter - Data parsed from the XML file. @@ -822,19 +822,18 @@ class ExecutionChecker(ResultVisitor): try: result["transfer-rate"] = float(groups.group(1)) * 1e3 result["latency"] = float(groups.group(2)) - result["completed-requests"] = int(groups.group(3)) - result["failed-requests"] = int(groups.group(4)) - result["bytes-transferred"] = int(groups.group(5)) - if "TCP_CPS"in tags: - result["cps"] = float(groups.group(6)) + result["completed-requests"] = int(groups.group(5)) + result["failed-requests"] = int(groups.group(6)) + result["bytes-transferred"] = int(groups.group(4)) + if "TCP_CPS" in tags: + result["cps"] = float(groups.group(3)) elif "TCP_RPS" in tags: - result["rps"] = float(groups.group(6)) + result["rps"] = float(groups.group(3)) else: return result, status status = "PASS" - except (IndexError, ValueError): - pass - + except (IndexError, ValueError) as err: + logging.warning(err) return result, status def visit_suite(self, suite): @@ -1098,11 +1097,13 @@ class ExecutionChecker(ResultVisitor): if self._kw_name is None: return elif self._kw_name.count("Run Telemetry On All Duts"): - self._telemetry_kw_counter += 1 - self._get_telemetry(msg) + if self._process_oper: + self._telemetry_kw_counter += 1 + self._get_telemetry(msg) elif self._kw_name.count("Show Runtime On All Duts"): - self._sh_run_counter += 1 - self._get_show_run(msg) + if self._process_oper: + self._sh_run_counter += 1 + self._get_show_run(msg) elif self._kw_name.count("Show Vpp Version On All Duts"): if not self._version: self._get_vpp_version(msg)