X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Flibraries%2Frobot%2Ftesting_path.robot;fp=resources%2Flibraries%2Frobot%2Ftesting_path.robot;h=0000000000000000000000000000000000000000;hb=6721e7f09aa95bff6622068332a3f56afad9c87b;hp=b7543e1c4dc76bcaba642b921df18927231c4ff6;hpb=859157b5db45927c7b4bb0b2d575e68805777a86;p=csit.git diff --git a/resources/libraries/robot/testing_path.robot b/resources/libraries/robot/testing_path.robot deleted file mode 100644 index b7543e1c4d..0000000000 --- a/resources/libraries/robot/testing_path.robot +++ /dev/null @@ -1,353 +0,0 @@ -# Copyright (c) 2016 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: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# 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 - -*** Keywords *** -| Configure path in 2-node circular topology -| | [Documentation] | Compute path for testing on two given nodes in circular -| | ... | topology and set corresponding test case variables. -| | ... -| | ... | *Arguments:* -| | ... | - ${tg_node} - TG node. Type: dictionary -| | ... | - ${dut_node} - DUT node. Type: dictionary -| | ... | - ${tg2_node} - Node where the path ends. Must be the same as TG node -| | ... | parameter in circular topology. Type: dictionary -| | ... -| | ... | *Return:* -| | ... | - No value returned -| | ... -| | ... | _NOTE:_ This KW sets following test case variables: -| | ... | - ${tg_node} - TG node. -| | ... | - ${tg_to_dut_if1} - 1st TG interface towards DUT. -| | ... | - ${tg_to_dut_if2} - 2nd TG interface towards DUT. -| | ... | - ${dut_node} - DUT node. -| | ... | - ${dut_to_tg_if1} - 1st DUT interface towards TG. -| | ... | - ${dut_to_tg_if2} - 2nd DUT interface towards TG. -| | ... | - ${tg_to_dut_if1_mac} -| | ... | - ${tg_to_dut_if2_mac} -| | ... | - ${dut_to_tg_if1_mac} -| | ... | - ${dut_to_tg_if2_mac} -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Given Configure path in 2-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['TG']} \| -| | ... -| | [Arguments] | ${tg_node} | ${dut_node} | ${tg2_node} -| | Should Be Equal | ${tg_node} | ${tg2_node} -| | Append Nodes | ${tg_node} | ${dut_node} | ${tg_node} -| | Compute Path | always_same_link=${FALSE} -| | ${tg_to_dut_if1} | ${tmp}= | First Interface -| | ${tg_to_dut_if2} | ${tmp}= | Last Interface -| | ${dut_to_tg_if1} | ${tmp}= | First Ingress Interface -| | ${dut_to_tg_if2} | ${tmp}= | Last Egress Interface -| | ${tg_to_dut_if1_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut_if1} -| | ${tg_to_dut_if2_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut_if2} -| | ${dut_to_tg_if1_mac}= | Get interface mac | ${dut_node} | ${dut_to_tg_if1} -| | ${dut_to_tg_if2_mac}= | Get interface mac | ${dut_node} | ${dut_to_tg_if2} -| | Set Test Variable | ${tg_to_dut_if1} -| | Set Test Variable | ${tg_to_dut_if2} -| | Set Test Variable | ${dut_to_tg_if1} -| | Set Test Variable | ${dut_to_tg_if2} -| | Set Test Variable | ${tg_to_dut_if1_mac} -| | Set Test Variable | ${tg_to_dut_if2_mac} -| | Set Test Variable | ${dut_to_tg_if1_mac} -| | Set Test Variable | ${dut_to_tg_if2_mac} -| | Set Test Variable | ${tg_node} -| | Set Test Variable | ${dut_node} - -| Set interfaces in 2-node circular topology up -| | [Documentation] | Set UP state on interfaces in 2-node path on nodes and -| | ... | wait for all interfaces are ready. Requires more than -| | ... | one link between nodes. -| | ... -| | ... | *Arguments:* -| | ... | - No arguments. -| | ... -| | ... | *Return:* -| | ... | - No value returned. -| | ... -| | ... | _NOTE:_ This KW uses test variables sets in -| | ... | "Configure path in 2-node circular topology" KW. -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Given Configure path in 2-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['TG']} \| -| | ... | \| And Set interfaces in 2-node circular topology up \| -| | ... -| | Set Interface State | ${tg_node} | ${tg_to_dut_if1} | up -| | Set Interface State | ${tg_node} | ${tg_to_dut_if2} | up -| | Set Interface State | ${dut_node} | ${dut_to_tg_if1} | up -| | Set Interface State | ${dut_node} | ${dut_to_tg_if2} | up -| | Vpp Node Interfaces Ready Wait | ${dut_node} - -| Configure path in 3-node circular topology -| | [Documentation] | Compute path for testing on three given nodes in circular -| | ... | topology and set corresponding test case variables. -| | ... -| | ... | *Arguments:* -| | ... | - ${tg_node} - TG node. Type: dictionary -| | ... | - ${dut1_node} - DUT1 node. Type: dictionary -| | ... | - ${dut2_node} - DUT2 node. Type: dictionary -| | ... | - ${tg2_node} - Node where the path ends. Must be the same as TG node -| | ... | parameter in circular topology. Type: dictionary -| | ... -| | ... | *Return:* -| | ... | - No value returned -| | ... | -| | ... | _NOTE:_ This KW sets following test case variables: -| | ... | - ${tg_node} - TG node. -| | ... | - ${tg_to_dut1} - TG interface towards DUT1. -| | ... | - ${tg_to_dut2} - TG interface towards DUT2. -| | ... | - ${dut1_node} - DUT1 node. -| | ... | - ${dut1_to_tg} - DUT1 interface towards TG. -| | ... | - ${dut1_to_dut2} - DUT1 interface towards DUT2. -| | ... | - ${dut2_node} - DUT2 node. -| | ... | - ${dut2_to_tg} - DUT2 interface towards TG. -| | ... | - ${dut2_to_dut1} - DUT2 interface towards DUT1. -| | ... | - ${tg_to_dut1_mac} -| | ... | - ${tg_to_dut2_mac} -| | ... | - ${dut1_to_tg_mac} -| | ... | - ${dut1_to_dut2_mac} -| | ... | - ${dut2_to_tg_mac} -| | ... | - ${dut2_to_dut1_mac} -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Given Configure path in 3-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['DUT2']} \| ${nodes['TG']} \| -| | ... -| | [Arguments] | ${tg_node} | ${dut1_node} | ${dut2_node} | ${tg2_node} -| | Should Be Equal | ${tg_node} | ${tg2_node} -| | Append Nodes | ${tg_node} | ${dut1_node} | ${dut2_node} | ${tg_node} -| | Compute Path -| | ${tg_to_dut1} | ${tmp}= | Next Interface -| | ${dut1_to_tg} | ${tmp}= | Next Interface -| | ${dut1_to_dut2} | ${tmp}= | Next Interface -| | ${dut2_to_dut1} | ${tmp}= | Next Interface -| | ${dut2_to_tg} | ${tmp}= | Next Interface -| | ${tg_to_dut2} | ${tmp}= | Next Interface -| | ${tg_to_dut1_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut1} -| | ${tg_to_dut2_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut2} -| | ${dut1_to_tg_mac}= | Get interface mac | ${dut1_node} | ${dut1_to_tg} -| | ${dut1_to_dut2_mac}= | Get interface mac | ${dut1_node} | ${dut1_to_dut2} -| | ${dut2_to_tg_mac}= | Get interface mac | ${dut2_node} | ${dut2_to_tg} -| | ${dut2_to_dut1_mac}= | Get interface mac | ${dut2_node} | ${dut2_to_dut1} -| | Set Test Variable | ${tg_to_dut1} -| | Set Test Variable | ${dut1_to_tg} -| | Set Test Variable | ${tg_to_dut2} -| | Set Test Variable | ${dut2_to_tg} -| | Set Test Variable | ${dut1_to_dut2} -| | Set Test Variable | ${dut2_to_dut1} -| | Set Test Variable | ${tg_to_dut1_mac} -| | Set Test Variable | ${tg_to_dut2_mac} -| | Set Test Variable | ${dut1_to_tg_mac} -| | Set Test Variable | ${dut1_to_dut2_mac} -| | Set Test Variable | ${dut2_to_tg_mac} -| | Set Test Variable | ${dut2_to_dut1_mac} -| | Set Test Variable | ${tg_node} -| | Set Test Variable | ${dut1_node} -| | Set Test Variable | ${dut2_node} - -| Set interfaces in 3-node circular topology up -| | [Documentation] -| | ... | Set UP state on interfaces in 3-node path on nodes and \ -| | ... | wait until all interfaces are ready. -| | ... -| | ... | *Arguments:* -| | ... | - No arguments. -| | ... -| | ... | *Return:* -| | ... | - No value returned. -| | ... -| | ... | _NOTE:_ This KW uses test variables sets in -| | ... | "Configure path in 3-node circular topology" KW. -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Given Configure path in 3-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['TG']} \| -| | ... | \| And Set interfaces in 3-node circular topology up \| -| | ... -| | Set Interface State | ${tg_node} | ${tg_to_dut1} | up -| | Set Interface State | ${tg_node} | ${tg_to_dut2} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_tg} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_dut2} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_tg} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_dut1} | up -| | Vpp Node Interfaces Ready Wait | ${dut1_node} -| | Vpp Node Interfaces Ready Wait | ${dut2_node} - -| Configure path in double-link 3-node circular topology -| | [Documentation] -| | ... | Compute path for testing on three given nodes in circular \ -| | ... | topology with double link and set corresponding \ -| | ... | test case variables. -| | ... -| | ... | *Arguments:* -| | ... | - ${tg_node} - TG node. Type: dictionary -| | ... | - ${dut1_node} - DUT1 node. Type: dictionary -| | ... | - ${dut2_node} - DUT2 node. Type: dictionary -| | ... | - ${tg2_node} - Node where the path ends. Must be the same as TG node -| | ... | parameter in circular topology. Type: dictionary -| | ... -| | ... | *Return:* -| | ... | - No value returned. -| | ... | -| | ... | _NOTE:_ This KW sets following test case variables: -| | ... | - ${tg_node} - TG node. -| | ... | - ${tg_to_dut1_if1} - TG interface towards DUT1 interface 1. -| | ... | - ${tg_to_dut1_if2} - TG interface towards DUT1 interface 2. -| | ... | - ${tg_to_dut1_mac_if1} - TG towards DUT1 MAC address interface 1. -| | ... | - ${tg_to_dut1_mac_if2} - TG towards DUT1 MAC address interface 2. -| | ... | - ${tg_to_dut2_if1} - TG interface towards DUT2 interface 1. -| | ... | - ${tg_to_dut2_if2} - TG interface towards DUT2 interface 2. -| | ... | - ${tg_to_dut2_mac_if1} - TG towards DUT2 MAC address interface 1. -| | ... | - ${tg_to_dut2_mac_if2} - TG towards DUT2 MAC address interface 2. -| | ... | - ${dut1_node} - DUT1 node. -| | ... | - ${dut1_to_tg_if1} - DUT1 interface towards TG interface 1. -| | ... | - ${dut1_to_tg_if2} - DUT1 interface towards TG interface 2. -| | ... | - ${dut1_to_tg_mac_if1} - DUT1 towards TG MAC address interface 1. -| | ... | - ${dut1_to_tg_mac_if2} - DUT1 towards TG MAC address interface 2. -| | ... | - ${dut1_to_dut2_if1} - DUT1 interface towards DUT2 interface 1. -| | ... | - ${dut1_to_dut2_if2} - DUT1 interface towards DUT2 interface 2. -| | ... | - ${dut1_to_dut2_mac_if1} - DUT1 towards DUT2 MAC address interface 1. -| | ... | - ${dut1_to_dut2_mac_if2} - DUT1 towards DUT2 MAC address interface 2. -| | ... | - ${dut2_node} - DUT2 node. -| | ... | - ${dut2_to_tg_if1} - DUT2 interface towards TG interface 1. -| | ... | - ${dut2_to_tg_if2} - DUT2 interface towards TG interface 2. -| | ... | - ${dut2_to_tg_mac_if1} - DUT2 towards TG MAC address interface 1. -| | ... | - ${dut2_to_tg_mac_if2} - DUT2 towards TG MAC address interface 2. -| | ... | - ${dut2_to_dut1_if1} - DUT2 interface towards DUT1 interface 1. -| | ... | - ${dut2_to_dut1_if2} - DUT2 interface towards DUT1 interface 2. -| | ... | - ${dut2_to_dut1_mac_if1} - DUT2 towards DUT1 MAC address interface 1. -| | ... | - ${dut2_to_dut1_mac_if2} - DUT2 towards DUT1 MAC address interface 2. -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Configure path in double-link 3-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['DUT2']} \| ${nodes['TG']} \| -| | ... -| | [Arguments] | ${tg_node} | ${dut1_node} | ${dut2_node} | ${tg2_node} -| | Should Be Equal | ${tg_node} | ${tg2_node} -| | # Compute path TG - DUT1 with two links in between -| | Append Nodes | ${tg_node} | ${dut1_node} | ${tg_node} -| | Compute Path | always_same_link=${FALSE} -| | ${tg_to_dut1_if1} | ${tmp}= | First Interface -| | ${tg_to_dut1_if2} | ${tmp}= | Last Interface -| | ${dut1_to_tg_if1} | ${tmp}= | First Ingress Interface -| | ${dut1_to_tg_if2} | ${tmp}= | Last Egress Interface -| | # Compute path TG - DUT2 with two links in between -| | Clear Path -| | Append Nodes | ${tg_node} | ${dut2_node} | ${tg_node} -| | Compute Path | always_same_link=${FALSE} -| | ${tg_to_dut2_if1} | ${tmp}= | First Interface -| | ${tg_to_dut2_if2} | ${tmp}= | Last Interface -| | ${dut2_to_tg_if1} | ${tmp}= | First Ingress Interface -| | ${dut2_to_tg_if2} | ${tmp}= | Last Egress Interface -| | # Compute path DUT1 - DUT2 with one link in between -| | Clear Path -| | Append Nodes | ${dut1_node} | ${dut2_node} | ${dut1_node} -| | Compute Path | always_same_link=${FALSE} -| | ${dut1_to_dut2_if1} | ${tmp}= | First Interface -| | ${dut1_to_dut2_if2} | ${tmp}= | Last Interface -| | ${dut2_to_dut1_if1} | ${tmp}= | First Ingress Interface -| | ${dut2_to_dut1_if2} | ${tmp}= | Last Egress Interface -| | # Set test variables -| | Set Test Variable | ${tg_to_dut1_if1} -| | Set Test Variable | ${tg_to_dut1_if2} -| | Set Test Variable | ${tg_to_dut2_if1} -| | Set Test Variable | ${tg_to_dut2_if2} -| | Set Test Variable | ${dut1_to_tg_if1} -| | Set Test Variable | ${dut1_to_tg_if2} -| | Set Test Variable | ${dut2_to_tg_if1} -| | Set Test Variable | ${dut2_to_tg_if2} -| | Set Test Variable | ${dut1_to_dut2_if1} -| | Set Test Variable | ${dut1_to_dut2_if2} -| | Set Test Variable | ${dut2_to_dut1_if1} -| | Set Test Variable | ${dut2_to_dut1_if2} -| | Set Test Variable | ${tg_node} -| | Set Test Variable | ${dut1_node} -| | Set Test Variable | ${dut2_node} -| | # Set Mac Addresses -| | ${tg_to_dut1_if1_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut1_if1} -| | ${tg_to_dut1_if2_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut1_if2} -| | ${tg_to_dut2_if1_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut2_if1} -| | ${tg_to_dut2_if2_mac}= | Get interface mac | ${tg_node} | ${tg_to_dut2_if2} -| | ${dut1_to_tg_if1_mac}= | Get interface mac | ${dut1_node} -| | ... | ${dut1_to_tg_if1} -| | ${dut1_to_tg_if2_mac}= | Get interface mac | ${dut1_node} -| | ... | ${dut1_to_tg_if2} -| | ${dut1_to_dut2_if1_mac}= | Get interface mac | ${dut1_node} -| | ... | ${dut1_to_dut2_if1} -| | ${dut1_to_dut2_if2_mac}= | Get interface mac | ${dut1_node} -| | ... | ${dut1_to_dut2_if2} -| | ${dut2_to_tg_if1_mac}= | Get interface mac | ${dut2_node} -| | ... | ${dut2_to_tg_if1} -| | ${dut2_to_tg_if2_mac}= | Get interface mac | ${dut2_node} -| | ... | ${dut2_to_tg_if2} -| | ${dut2_to_dut1_if1_mac}= | Get interface mac | ${dut2_node} -| | ... | ${dut2_to_dut1_if1} -| | ${dut2_to_dut1_if2_mac}= | Get interface mac | ${dut2_node} -| | ... | ${dut2_to_dut1_if2} -| | Set Test Variable | ${tg_to_dut1_if1_mac} -| | Set Test Variable | ${tg_to_dut1_if2_mac} -| | Set Test Variable | ${tg_to_dut2_if1_mac} -| | Set Test Variable | ${tg_to_dut2_if2_mac} -| | Set Test Variable | ${dut1_to_tg_if1_mac} -| | Set Test Variable | ${dut1_to_tg_if2_mac} -| | Set Test Variable | ${dut1_to_dut2_if1_mac} -| | Set Test Variable | ${dut1_to_dut2_if2_mac} -| | Set Test Variable | ${dut2_to_tg_if1_mac} -| | Set Test Variable | ${dut2_to_tg_if2_mac} -| | Set Test Variable | ${dut2_to_dut1_if1_mac} -| | Set Test Variable | ${dut2_to_dut1_if2_mac} - -| Set interfaces in double-link 3-node circular topology up -| | [Documentation] -| | ... | Set UP state on interfaces in 3-node double link path \ -| | ... | wait until all interfaces are ready. -| | ... -| | ... | *Arguments:* -| | ... | - No arguments. -| | ... -| | ... | *Return:* -| | ... | - No value returned. -| | ... -| | ... | _NOTE:_ This KW uses test variables sets in -| | ... | "Configure path in double-link 3-node circular topology" KW. -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Configure path in double-link 3-node circular topology \| ${nodes['TG']} \ -| | ... | \| ${nodes['DUT1']} \| ${nodes['TG']} \| -| | ... | \| Interfaces in Double-Link 3-node testing are UP \| -| | ... -| | Set Interface State | ${tg_node} | ${tg_to_dut1_if1} | up -| | Set Interface State | ${tg_node} | ${tg_to_dut1_if2} | up -| | Set Interface State | ${tg_node} | ${tg_to_dut2_if1} | up -| | Set Interface State | ${tg_node} | ${tg_to_dut2_if2} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_tg_if1} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_tg_if2} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_tg_if1} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_tg_if2} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_dut2_if1} | up -| | Set Interface State | ${dut1_node} | ${dut1_to_dut2_if2} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_dut1_if1} | up -| | Set Interface State | ${dut2_node} | ${dut2_to_dut1_if2} | up -| | Vpp Node Interfaces Ready Wait | ${dut1_node} -| | Vpp Node Interfaces Ready Wait | ${dut2_node} \ No newline at end of file