aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--resources/libraries/robot/bridge_domain.robot13
-rw-r--r--resources/libraries/robot/l2_traffic.robot29
-rw-r--r--resources/libraries/robot/l2_xconnect.robot17
-rwxr-xr-xresources/traffic_scripts/send_ip_icmp.py6
-rw-r--r--tests/suites/bridge_domain/test.robot17
-rw-r--r--tests/suites/l2_xconnect/l2_xconnect_untagged.robot7
-rw-r--r--tests/suites/vxlan/vxlan_untagged.robot4
7 files changed, 46 insertions, 47 deletions
diff --git a/resources/libraries/robot/bridge_domain.robot b/resources/libraries/robot/bridge_domain.robot
index 99ba375c68..819331f1a7 100644
--- a/resources/libraries/robot/bridge_domain.robot
+++ b/resources/libraries/robot/bridge_domain.robot
@@ -12,8 +12,6 @@
# limitations under the License.
*** Settings ***
-| Library | resources.libraries.python.topology.Topology
-| Library | resources.libraries.python.TrafficScriptExecutor
| Library | resources.libraries.python.L2Util
| Library | resources.libraries.python.InterfaceUtil
@@ -26,14 +24,3 @@
| | Run Keyword If | ${learn} == ${FALSE}
| | ... | Vpp Add L2fib Entry | ${node} | ${mac} | ${if2} | ${1}
| | All Vpp Interfaces Ready Wait | ${nodes}
-
-| Send and receive traffic
-| | [Documentation] | Send traffic from source interface to destination interface
-| | [Arguments] | ${tg_node} | ${src_int} | ${dst_int}
-| | ${src_mac}= | Get Interface Mac | ${tg_node} | ${src_int}
-| | ${dst_mac}= | Get Interface Mac | ${tg_node} | ${dst_int}
-| | ${src_ip}= | Set Variable | 192.168.100.1
-| | ${dst_ip}= | Set Variable | 192.168.100.2
-| | ${args}= | Traffic Script Gen Arg | ${dst_int} | ${src_int} | ${src_mac}
-| | | ... | ${dst_mac} | ${src_ip} | ${dst_ip}
-| | Run Traffic Script On Node | send_ip_icmp.py | ${tg_node} | ${args}
diff --git a/resources/libraries/robot/l2_traffic.robot b/resources/libraries/robot/l2_traffic.robot
new file mode 100644
index 0000000000..2ba53d5821
--- /dev/null
+++ b/resources/libraries/robot/l2_traffic.robot
@@ -0,0 +1,29 @@
+# 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 ***
+| Documentation | Keywords for send and receive different types of traffic through L2 network.
+| Library | resources.libraries.python.topology.Topology
+| Library | resources.libraries.python.TrafficScriptExecutor
+
+*** Keywords ***
+| Send and receive ICMPv4
+| | [Documentation] | Send ICMPv4 echo request from source interface to destination interface.
+| | [Arguments] | ${tg_node} | ${src_int} | ${dst_int}
+| | ${src_mac}= | Get Interface Mac | ${tg_node} | ${src_int}
+| | ${dst_mac}= | Get Interface Mac | ${tg_node} | ${dst_int}
+| | ${src_ip}= | Set Variable | 192.168.100.1
+| | ${dst_ip}= | Set Variable | 192.168.100.2
+| | ${args}= | Traffic Script Gen Arg | ${dst_int} | ${src_int} | ${src_mac}
+| | | ... | ${dst_mac} | ${src_ip} | ${dst_ip}
+| | Run Traffic Script On Node | send_ip_icmp.py | ${tg_node} | ${args}
diff --git a/resources/libraries/robot/l2_xconnect.robot b/resources/libraries/robot/l2_xconnect.robot
index 12601e3683..0983181010 100644
--- a/resources/libraries/robot/l2_xconnect.robot
+++ b/resources/libraries/robot/l2_xconnect.robot
@@ -12,27 +12,10 @@
# limitations under the License.
*** Settings ***
-
-| Library | resources.libraries.python.VatExecutor
| Library | resources.libraries.python.L2Util
-| Library | resources.libraries.python.topology.Topology
-| Library | resources.libraries.python.TrafficScriptExecutor
-| Variables | resources/libraries/python/constants.py
*** Keywords ***
-
| L2 setup xconnect on DUT
| | [Documentation] | Setup Bidirectional Cross Connect on DUTs
| | [Arguments] | ${node} | ${if1} | ${if2} |
| | Vpp Setup Bidirectional Cross Connect | ${node} | ${if1} | ${if2}
-
-| Send and receive traffic
-| | [Documentation] | Send traffic from source interface to destination interface
-| | [Arguments] | ${tg_node} | ${src_int} | ${dst_int}
-| | ${src_mac}= | Get Interface Mac | ${tg_node} | ${src_int}
-| | ${dst_mac}= | Get Interface Mac | ${tg_node} | ${dst_int}
-| | ${src_ip}= | Set Variable | 192.168.100.1
-| | ${dst_ip}= | Set Variable | 192.168.100.2
-| | ${args}= | Traffic Script Gen Arg | ${dst_int} | ${src_int} | ${src_mac}
-| | | ... | ${dst_mac} | ${src_ip} | ${dst_ip}
-| | Run Traffic Script On Node | send_ip_icmp.py | ${tg_node} | ${args}
diff --git a/resources/traffic_scripts/send_ip_icmp.py b/resources/traffic_scripts/send_ip_icmp.py
index 5e365ebc38..f797bda163 100755
--- a/resources/traffic_scripts/send_ip_icmp.py
+++ b/resources/traffic_scripts/send_ip_icmp.py
@@ -40,8 +40,8 @@ def main():
# Create empty ip ICMP packet and add padding before sending
pkt_raw = Ether(src=src_mac, dst=dst_mac) / \
- IP(src=src_ip, dst=dst_ip) / \
- ICMP()
+ IP(src=src_ip, dst=dst_ip) / \
+ ICMP()
# Send created packet on one interface and receive on the other
sent_packets.append(pkt_raw)
@@ -51,7 +51,7 @@ def main():
# Check whether received packet contains layers Ether, IP and ICMP
if ether is None:
- raise RuntimeError('ICMPv6 echo reply Rx timeout')
+ raise RuntimeError('ICMP echo Rx timeout')
if not ether.haslayer(IP):
raise RuntimeError(
diff --git a/tests/suites/bridge_domain/test.robot b/tests/suites/bridge_domain/test.robot
index a7f1104224..9695b7fe88 100644
--- a/tests/suites/bridge_domain/test.robot
+++ b/tests/suites/bridge_domain/test.robot
@@ -10,19 +10,20 @@
# 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 ***
| Resource | resources/libraries/robot/default.robot
| Resource | resources/libraries/robot/interfaces.robot
| Resource | resources/libraries/robot/bridge_domain.robot
-| Force Tags | HW_ENV | VM_ENV
+| Resource | resources/libraries/robot/l2_traffic.robot
| Library | resources.libraries.python.topology.Topology
| Library | resources.libraries.python.NodePath
| Variables | resources/libraries/python/topology.py
+| Force Tags | HW_ENV | VM_ENV
| Suite Setup | Setup all TGs before traffic script
| Test Setup | Setup all DUTs before test
*** Test Cases ***
-
| VPP reports interfaces
| | VPP reports interfaces on | ${nodes['DUT1']}
@@ -35,8 +36,8 @@
| | ${bd_if1} | ${tmp}= | First Ingress Interface
| | ${bd_if2} | ${tmp}= | Last Egress Interface
| | Vpp l2bd forwarding setup | ${nodes['DUT1']} | ${bd_if1} | ${bd_if2}
-| | Send and receive traffic | ${nodes['TG']} | ${tg_if1} | ${tg_if2}
-| | Send and receive traffic | ${nodes['TG']} | ${tg_if2} | ${tg_if1}
+| | Send and receive ICMPv4 | ${nodes['TG']} | ${tg_if1} | ${tg_if2}
+| | Send and receive ICMPv4 | ${nodes['TG']} | ${tg_if2} | ${tg_if1}
| Vpp forwards packets via L2 bridge domain in circular topology
| | [Tags] | 3_NODE_SINGLE_LINK_TOPO
@@ -51,8 +52,8 @@
| | ${tg_if2} | ${tg}= | Next Interface
| | Vpp l2bd forwarding setup | ${dut1} | ${dut1_if1} | ${dut1_if2}
| | Vpp l2bd forwarding setup | ${dut2} | ${dut2_if1} | ${dut2_if2}
-| | Send and receive traffic | ${tg} | ${tg_if1} | ${tg_if2}
-| | Send and receive traffic | ${tg} | ${tg_if2} | ${tg_if1}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if1} | ${tg_if2}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if2} | ${tg_if1}
| Vpp forwards packets via L2 bridge domain in circular topology with static L2FIB entries
| | [Tags] | 3_NODE_SINGLE_LINK_TOPO
@@ -70,5 +71,5 @@
| | ... | ${mac}
| | Vpp l2bd forwarding setup | ${dut2} | ${dut2_if1} | ${dut2_if2} | ${FALSE}
| | ... | ${mac}
-| | Send and receive traffic | ${tg} | ${tg_if1} | ${tg_if2}
-| | Send and receive traffic | ${tg} | ${tg_if2} | ${tg_if1}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if1} | ${tg_if2}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if2} | ${tg_if1}
diff --git a/tests/suites/l2_xconnect/l2_xconnect_untagged.robot b/tests/suites/l2_xconnect/l2_xconnect_untagged.robot
index 0dd3251aca..cf32bfa076 100644
--- a/tests/suites/l2_xconnect/l2_xconnect_untagged.robot
+++ b/tests/suites/l2_xconnect/l2_xconnect_untagged.robot
@@ -12,9 +12,9 @@
# limitations under the License.
*** Settings ***
-
| Resource | resources/libraries/robot/default.robot
| Resource | resources/libraries/robot/l2_xconnect.robot
+| Resource | resources/libraries/robot/l2_traffic.robot
| Library | resources.libraries.python.InterfaceUtil
| Library | resources.libraries.python.NodePath
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | HW_ENV | VM_ENV
@@ -23,7 +23,6 @@
*** Test Cases ***
-
| Vpp forwards packets via L2 xconnect in circular topology
| | Append Nodes | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | Compute Path
@@ -36,5 +35,5 @@
| | L2 setup xconnect on DUT | ${dut1} | ${dut1_if1} | ${dut1_if2}
| | L2 setup xconnect on DUT | ${dut2} | ${dut2_if1} | ${dut2_if2}
| | All Vpp Interfaces Ready Wait | ${nodes}
-| | Send and receive traffic | ${tg} | ${tg_if1} | ${tg_if2}
-| | Send and receive traffic | ${tg} | ${tg_if2} | ${tg_if1}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if1} | ${tg_if2}
+| | Send and receive ICMPv4 | ${tg} | ${tg_if2} | ${tg_if1}
diff --git a/tests/suites/vxlan/vxlan_untagged.robot b/tests/suites/vxlan/vxlan_untagged.robot
index fe4428210d..45d57a902d 100644
--- a/tests/suites/vxlan/vxlan_untagged.robot
+++ b/tests/suites/vxlan/vxlan_untagged.robot
@@ -14,8 +14,8 @@
*** Settings ***
| Documentation | VXLAN tunnel untagged traffic tests
| Resource | resources/libraries/robot/default.robot
-| Resource | resources/libraries/robot/bridge_domain.robot
| Resource | resources/libraries/robot/vxlan.robot
+| Resource | resources/libraries/robot/l2_traffic.robot
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | EXPECTED_FAILING
| Suite Setup | Run Keywords | Setup all DUTs before test
| ... | AND | Setup all TGs before traffic script
@@ -24,4 +24,4 @@
*** Test Cases ***
| VPP can encapsulate L2 in VXLAN over V4
-| | Send and receive traffic | ${nodes['TG']} | ${tgs_to_dut1} | ${tgs_to_dut2}
+| | Send and receive ICMPv4 | ${nodes['TG']} | ${tgs_to_dut1} | ${tgs_to_dut2}