aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/robot/overlay
diff options
context:
space:
mode:
Diffstat (limited to 'resources/libraries/robot/overlay')
-rw-r--r--resources/libraries/robot/overlay/vxlan.robot58
1 files changed, 39 insertions, 19 deletions
diff --git a/resources/libraries/robot/overlay/vxlan.robot b/resources/libraries/robot/overlay/vxlan.robot
index 69f4c10a88..66ffa3dfa1 100644
--- a/resources/libraries/robot/overlay/vxlan.robot
+++ b/resources/libraries/robot/overlay/vxlan.robot
@@ -17,19 +17,21 @@
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/l2/l2_bridge_domain.robot
| Resource | resources/libraries/robot/l2/l2_xconnect.robot
-| Library | resources.libraries.python.L2Util
+| Library | resources.libraries.python.InterfaceUtil
| Library | resources.libraries.python.IPUtil
| Library | resources.libraries.python.IPv4Util
| Library | resources.libraries.python.IPv6Util
| Library | resources.libraries.python.IPv4Setup
+| Library | resources.libraries.python.L2Util
| Library | resources.libraries.python.NodePath
*** Keywords ***
| Configure IP addresses and neighbors on interfaces
| | [Documentation] | *Set IPv4 addresses on interfaces on DUTs.*
-| | ... | If interface index is None then is determines with Get Interface Sw Index
-| | ... | in this case it is required the interface to be present in topology dict.
-| | ... | It also executes VPP IP Probe to determine MACs to IPs on DUTs
+| | ... | If interface index is None then is determines with Get Interface Sw
+| | ... | Index in this case it is required the interface to be present in
+| | ... | topology dict. It also executes VPP IP Probe to determine MACs to IPs
+| | ... | on DUTs.
| | ...
| | ... | _Set testcase variables with IP addresses and prefix length:_
| | ... | - ${dut1s_ip_address}
@@ -37,35 +39,38 @@
| | ... | - ${duts_ip_address_prefix}
| | ...
| | [Arguments] | ${DUT1} | ${DUT1_INT_NAME} | ${DUT1_INT_INDEX}
-| | ... | ${DUT2} | ${DUT2_INT_NAME} | ${DUT2_INT_INDEX}
+| | ... | ${DUT2} | ${DUT2_INT_NAME} | ${DUT2_INT_INDEX}
| | Set Test Variable | ${dut1s_ip_address} | 172.16.0.1
| | Set Test Variable | ${dut2s_ip_address} | 172.16.0.2
| | Set Test Variable | ${duts_ip_address_prefix} | 24
| | ${DUT1_INT_KEY}= | Run Keyword If | ${DUT1_INT_INDEX} is None
-| | | ... | Get Interface by name | ${DUT1} | ${DUT1_INT_NAME}
+| | ... | Get Interface by name | ${DUT1} | ${DUT1_INT_NAME}
| | ${DUT2_INT_KEY}= | Run Keyword If | ${DUT2_INT_INDEX} is None
-| | | ... | Get Interface by name | ${DUT2} | ${DUT2_INT_NAME}
+| | ... | Get Interface by name | ${DUT2} | ${DUT2_INT_NAME}
| | ${DUT1_INT_INDEX}= | Run Keyword If | ${DUT1_INT_INDEX} is None
-| | | ... | Get Interface Sw Index | ${DUT1} | ${DUT1_INT_KEY}
-| | | ... | ELSE | Set Variable | ${DUT1_INT_INDEX}
+| | ... | Get Interface Sw Index | ${DUT1} | ${DUT1_INT_KEY}
+| | ... | ELSE | Set Variable | ${DUT1_INT_INDEX}
| | ${DUT2_INT_INDEX}= | Run Keyword If | ${DUT2_INT_INDEX} is None
-| | | ... | Get Interface Sw Index | ${DUT2} | ${DUT2_INT_KEY}
-| | | ... | ELSE | Set Variable | ${DUT2_INT_INDEX}
+| | ... | Get Interface Sw Index | ${DUT2} | ${DUT2_INT_KEY}
+| | ... | ELSE | Set Variable | ${DUT2_INT_INDEX}
| | ${DUT1_INT_MAC}= | Vpp Get Interface Mac | ${DUT1} | ${DUT1_INT_INDEX}
| | ${DUT2_INT_MAC}= | Vpp Get Interface Mac | ${DUT2} | ${DUT2_INT_INDEX}
| | Set Interface Address | ${DUT1} | ${DUT1_INT_INDEX}
| | ... | ${dut1s_ip_address} | ${duts_ip_address_prefix}
| | Set Interface Address | ${DUT2} | ${DUT2_INT_INDEX}
| | ... | ${dut2s_ip_address} | ${duts_ip_address_prefix}
-| | Add IP Neighbor | ${DUT1} | ${DUT1_INT_INDEX} | ${dut2s_ip_address} | ${DUT2_INT_MAC}
-| | Add IP Neighbor | ${DUT2} | ${DUT2_INT_INDEX} | ${dut1s_ip_address} | ${DUT1_INT_MAC}
+| | Add IP Neighbor | ${DUT1} | ${DUT1_INT_INDEX} | ${dut2s_ip_address}
+| | ... | ${DUT2_INT_MAC}
+| | Add IP Neighbor | ${DUT2} | ${DUT2_INT_INDEX} | ${dut1s_ip_address}
+| | ... | ${DUT1_INT_MAC}
| Add interfaces to L2BD
| | [Arguments] | ${DUT} | ${BID} | ${INTERFACE_1} | ${INTERFACE_2}
| | Vpp Add L2 Bridge Domain | ${DUT} | ${BID} | ${INTERFACE_1} | ${INTERFACE_2}
| Create vlan interfaces for VXLAN
-| | [Documentation] | *Create VLAN subinterface on interfaces on DUTs with given VLAN ID.*
+| | [Documentation] | *Create VLAN subinterface on interfaces on DUTs with given
+| | ... | VLAN ID.*
| | ...
| | ... | _Set testcase variables with name and index of created interfaces:_
| | ... | - ${dut1s_vlan_name}
@@ -77,9 +82,9 @@
| | ${INT1_NAME}= | Get interface name | ${DUT1} | ${INT1}
| | ${INT2_NAME}= | Get interface name | ${DUT2} | ${INT2}
| | ${dut1s_vlan_name} | ${dut1s_vlan_index}= | Create Vlan Subinterface
-| | | ... | ${DUT1} | ${INT1_NAME} | ${VLAN}
+| | ... | ${DUT1} | ${INT1_NAME} | ${VLAN}
| | ${dut2s_vlan_name} | ${dut2s_vlan_index}= | Create Vlan Subinterface
-| | | ... | ${DUT2} | ${INT2_NAME} | ${VLAN}
+| | ... | ${DUT2} | ${INT2_NAME} | ${VLAN}
| | Set Interface State | ${DUT1} | ${dut1s_vlan_index} | up
| | Set Interface State | ${DUT2} | ${dut2s_vlan_index} | up
| | Set Test Variable | ${dut1s_vlan_name}
@@ -111,8 +116,9 @@
| | ...
| | ... | *Example:*
| | ...
-| | ... | \| Send VXLAN encapsulated packet and verify received packet \| ${tg_node} \| port4 \| port4 \
-| | ... | \| fa:16:3e:6d:f9:c5 \| fa:16:3e:e6:6d:9a \| 192.168.0.1 \
+| | ... | \| Send VXLAN encapsulated packet and verify received packet \
+| | ... | \| ${tg_node} \| port4 \| port4 \
+| | ... | \| fa:16:3e:6d:f9:c5 \| fa:16:3e:e6:6d:9a \| 192.168.0.1 \
| | ... | \| 192.168.0.2 \| ${101} \| 192.168.0.2 \| 192.168.0.1 \| ${102} \|
| | ...
| | [Arguments] | ${tg_node} | ${tx_if} | ${rx_if}
@@ -132,4 +138,18 @@
| | ... | --rx_src_ip ${rx_src_ip}
| | ... | --rx_dst_ip ${rx_dst_ip}
| | ... | --rx_vni ${rx_vni}
-| | Run Traffic Script On Node | send_vxlan_check_vxlan.py | ${tg_node} | ${args}
+| | Run Traffic Script On Node | send_vxlan_check_vxlan.py | ${tg_node}
+| | ... | ${args}
+
+| Get VXLAN dump
+| | [Documentation] | Get VXLAN dump.
+| | ...
+| | ... | *Arguments:*
+| | ... | - node - DUT node data. Type: dictionary
+| | ... | - interface - Interface on the VPP node (Optional). Type: string
+| | ...
+| | [Arguments] | ${dut_node} | ${interface}=${None}
+| | ...
+| | [Return] | ${vxlan_dump}
+| | ...
+| | ${vxlan_dump}= | VXLAN Dump | ${dut_node} | ${interface}