X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FTrace.py;h=f82ab95f2edab755f674a4d829d2795669f69a66;hb=bd15bb418bf618ff3055fb25c339778d12c1eaef;hp=5f885d6c60bc4ee754da181191418d061095ea83;hpb=f88a3d9178dfbd73d0479f9aa2f5224e0c89ca1f;p=csit.git diff --git a/resources/libraries/python/Trace.py b/resources/libraries/python/Trace.py index 5f885d6c60..f82ab95f2e 100644 --- a/resources/libraries/python/Trace.py +++ b/resources/libraries/python/Trace.py @@ -1,4 +1,4 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2021 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: @@ -17,7 +17,7 @@ from resources.libraries.python.PapiExecutor import PapiSocketExecutor from resources.libraries.python.topology import NodeType -class Trace(object): +class Trace: """This class provides methods to manipulate the VPP packet trace.""" @staticmethod @@ -29,21 +29,29 @@ class Trace(object): :type nodes: dict :type maximum: int """ - maximum = "max {count}".format(count=maximum) if maximum is not None\ - else "" - + max_opt = f"" if maximum is None else f" max {maximum}" for node in nodes.values(): - if node['type'] == NodeType.DUT: - PapiSocketExecutor.run_cli_cmd( - node, cmd="show trace {max}".format(max=maximum)) + if node[u"type"] == NodeType.DUT: + PapiSocketExecutor.run_cli_cmd_on_all_sockets( + node, f"show trace{max_opt}") @staticmethod def clear_packet_trace_on_all_duts(nodes): - """Clear VPP packet trace. + """Clear VPP packet trace on all duts. :param nodes: Nodes where the packet trace will be cleared. :type nodes: dict """ for node in nodes.values(): - if node['type'] == NodeType.DUT: - PapiSocketExecutor.run_cli_cmd(node, cmd="clear trace") + if node[u"type"] == NodeType.DUT: + Trace.clear_packet_trace_on_dut(node) + + @staticmethod + def clear_packet_trace_on_dut(node): + """Clear VPP packet trace on dut. + + :param node: Node where the packet trace will be cleared. + :type node: dict + """ + PapiSocketExecutor.run_cli_cmd_on_all_sockets( + node, u"clear trace")