aboutsummaryrefslogtreecommitdiffstats
path: root/tests/suites/ipv4/ipv4_arp_untagged.robot
diff options
context:
space:
mode:
Diffstat (limited to 'tests/suites/ipv4/ipv4_arp_untagged.robot')
-rw-r--r--tests/suites/ipv4/ipv4_arp_untagged.robot40
1 files changed, 34 insertions, 6 deletions
diff --git a/tests/suites/ipv4/ipv4_arp_untagged.robot b/tests/suites/ipv4/ipv4_arp_untagged.robot
index 3af680e815..099cd64020 100644
--- a/tests/suites/ipv4/ipv4_arp_untagged.robot
+++ b/tests/suites/ipv4/ipv4_arp_untagged.robot
@@ -12,7 +12,6 @@
# limitations under the License.
*** Settings ***
-| Documentation | Check if VPP sends ARP request to unknown destinations.
| Resource | resources/libraries/robot/default.robot
| Resource | resources/libraries/robot/counters.robot
| Resource | resources/libraries/robot/interfaces.robot
@@ -27,6 +26,13 @@
| ... | AND | Update All Interface Data On All Nodes | ${nodes}
| Test Setup | Setup all DUTs before test
| Test Teardown | Show packet trace on all DUTs | ${nodes}
+| Documentation | *IPv4 ARP test cases*
+| ...
+| ... | RFC826 ARP: Eth-IPv4 and Eth-ARP on links TG-DUT1, TG-DUT2, DUT1-DUT2:
+| ... | IPv4 ARP tests use 3-node topology TG - DUT1 - DUT2 - TG with one link
+| ... | between the nodes. DUT1 and DUT2 are configured with IPv4 routing and
+| ... | static routes. DUT ARP functionality is tested by making TG send ICMPv4
+| ... | Echo Requests towards its other interface via DUT1 and DUT2.
*** Variables ***
| ${dut1_to_tg_ip}= | 192.168.1.1
@@ -37,9 +43,31 @@
| ${prefix_length}= | 24
*** Test Cases ***
-| VPP sends ARP requests for unknown destinations
-| | [Documentation] | Setup IP addresses and route.
-| | ... | Send ICMP packet and check if VPP sends ARP request.
+| TC01: DUT sends ARP Request for unresolved locally connected IPv4 address
+| | [Documentation]
+| | ... | Make TG send test packet destined to IPv4 address of its other\
+| | ... | interface connected to DUT2. Make TG verify DUT2 sends ARP
+| | ... | Request for locally connected TG IPv4 address.
+| | Given Path for 3-node testing is set
+| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
+| | And Interfaces in 3-node path are up
+| | And L2 setup xconnect on DUT
+| | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_tg}
+| | When Set Interface Address | ${dut1_node}
+| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
+| | And Set Interface Address | ${dut1_node}
+| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
+| | Then Send Packet And Check ARP Request | ${tg_node}
+| | ... | ${test_src_ip} | ${dut1_to_dut2_ip_GW} | ${tg_to_dut1}
+| | ... | ${dut1_to_tg_mac} | ${tg_to_dut2} | ${dut1_to_dut2_mac}
+| | ... | ${dut1_to_dut2_ip} | ${dut1_to_dut2_ip_GW}
+
+| TC02: DUT sends ARP Request for route next hop IPv4 address
+| | [Documentation] |
+| | ... | Make TG send test packet destined to IPv4 address matching\
+| | ... | static route on DUT2. Make TG verify DUT2 sends ARP Request for
+| | ... | next hop of the static route.
+| | [Tags] | EXPECTED_FAILING
| | Given Path for 3-node testing is set
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Interfaces in 3-node path are up
@@ -51,8 +79,8 @@
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
| | And Vpp Route Add
| | ... | ${dut1_node} | ${test_dst_ip} | ${prefix_length}
-| | ... | ${dut1_to_dut2_ip_GW} | ${dut1_to_dut2}
+| | ... | ${dut1_to_dut2_ip_GW} | ${dut1_to_dut2} | resolve_attempts=${NONE}
| | Then Send Packet And Check ARP Request | ${tg_node}
| | ... | ${test_src_ip} | ${test_dst_ip} | ${tg_to_dut1}
-| | ... | ${tg_to_dut2_mac} | ${tg_to_dut2} | ${dut1_to_dut2_mac}
+| | ... | ${dut1_to_tg_mac} | ${tg_to_dut2} | ${dut1_to_dut2_mac}
| | ... | ${dut1_to_dut2_ip} | ${dut1_to_dut2_ip_GW}