Patch to reset default VPP configuration in perf.
[csit.git] / resources / libraries / robot / interfaces.robot
index 18c9c0c..330cc79 100644 (file)
@@ -11,6 +11,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 *** Settings ***
+| Library | resources.libraries.python.InterfaceUtil
+| Library | resources.libraries.python.NodePath
 | Resource | resources/libraries/robot/vat/interfaces.robot
 
 *** Keywords ***
 | | VPP reports interfaces through VAT on | ${node}
 #| | VPP reports interfaces through ODL on | ${node}
 #| | VPP reports interfaces through DEBUGCLI on | ${node}
+
+| Setup MTU on TG based on MTU on DUT
+| | [Documentation] | Type of the tg_node must be TG and dut_node must be DUT
+| | [Arguments] | ${tg_node} | ${dut_node}
+| | Append Nodes | ${tg_node} | ${dut_node}
+| | Compute Path
+| | ${tg_port} | ${tg_node}= | First Interface
+| | ${dut_port} | ${dut_node}= | Last Interface
+| | # get physical layer MTU (max. size of Ethernet frame)
+| | ${mtu}= | Get Interface MTU | ${dut_node} | ${dut_port}
+| | # Ethernet MTU is physical layer MTU minus size of Ethernet header and FCS
+| | ${eth_mtu}= | Evaluate | ${mtu} - 14 - 4
+| | Set Interface Ethernet MTU | ${tg_node} | ${tg_port} | ${eth_mtu}
+
+| Interfaces on all VPP nodes in the path are up
+| | [Documentation] | Wait until all interfaces of the given VPP node
+| | ...             | with admin-up state are in link-up state.
+| | ...
+| | ... | *Arguments:*
+| | ... | - @{node_list} - DUT nodes. Type: list
+| | ...
+| | ... | *Return:*
+| | ... | - No value returned
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Interfaces on all VPP nodes in the path are up \
+| | ... | \| ${nodes['DUT1']} \| ${nodes['DUT2']} \|
+| | [Arguments] | @{node_list}
+| | :FOR | ${node} | IN | @{node_list}
+| |      | VPP Node Interfaces Ready Wait | ${node}