aboutsummaryrefslogtreecommitdiffstats
path: root/tests/vpp/func/ip4
diff options
context:
space:
mode:
authorJan Gelety <jgelety@cisco.com>2019-05-30 16:13:25 +0200
committerJan Gelety <jgelety@cisco.com>2019-06-18 21:07:12 +0200
commit0e28406b43bf4ce145f1530f15dbb00957edf945 (patch)
treeb9f76fe6f1b92165962a82cb4bf850f0cf4c491d /tests/vpp/func/ip4
parent92fbe3b8d880f9a3dd63e1309d76772b1685a037 (diff)
CSIT-1459: Migrate IP libraries from VAT to PAPI
Change-Id: Id84cf9c3afd53260b5bbf658a6a3870aa0c91333 Signed-off-by: Jan Gelety <jgelety@cisco.com>
Diffstat (limited to 'tests/vpp/func/ip4')
-rw-r--r--tests/vpp/func/ip4/eth2p-dot1q-ip4base-func.robot30
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-copblklistbase-func.robot26
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-copwhlistbase-func.robot30
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-iaclbase-func.robot83
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4arp-func.robot22
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpclient-func.robot24
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpproxy-func.robot29
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4ecmp-func.robot29
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4proxyarp-func.robot46
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4base-rpf-func.robot30
-rw-r--r--tests/vpp/func/ip4/eth2p-ethip4-ip4basevrf-func.robot77
11 files changed, 227 insertions, 199 deletions
diff --git a/tests/vpp/func/ip4/eth2p-dot1q-ip4base-func.robot b/tests/vpp/func/ip4/eth2p-dot1q-ip4base-func.robot
index d5b89ec594..123969a867 100644
--- a/tests/vpp/func/ip4/eth2p-dot1q-ip4base-func.robot
+++ b/tests/vpp/func/ip4/eth2p-dot1q-ip4base-func.robot
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2019 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:
@@ -12,13 +12,15 @@
# limitations under the License.
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
-| Resource | resources/libraries/robot/shared/testing_path.robot
+| Library | resources.libraries.python.IPv6Util
+| Library | resources.libraries.python.Trace
+| ...
| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/l2/tagging.robot
+| Resource | resources/libraries/robot/shared/default.robot
+| Resource | resources/libraries/robot/shared/testing_path.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Trace
-| Library | resources.libraries.python.IPv6Util
+| ...
| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | VM_ENV | HW_ENV | VPP_VM_ENV
| ... | SKIP_VPP_PATCH
| Test Setup | Set up functional test
@@ -89,16 +91,16 @@
| | ${vlan2_name} | ${vlan2_index}= | Create vlan sub-interface
| | ... | ${dut_node} | ${dut_to_tg_if2} | ${tag_2}
| |
-| | Set Interface Address | ${dut_node}
+| | VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if1} | ${ip4_net0_1} | ${ip4_prefix}
-| | Set Interface Address | ${dut_node}
+| | VPP Interface Set IP Address | ${dut_node}
| | ... | ${vlan1_index} | ${ip4_net1_1} | ${ip4_prefix}
-| | Set Interface Address | ${dut_node}
+| | VPP Interface Set IP Address | ${dut_node}
| | ... | ${vlan2_index} | ${ip4_net2_1} | ${ip4_prefix}
| |
-| | Add IP Neighbor | ${dut_node} | ${dut_to_tg_if1} | ${ip4_net0_2}
-| | ... | ${tg_to_dut_if1_mac}
-| | Add IP Neighbor | ${dut_node} | ${vlan1_index} | ${ip4_net1_2}
-| | ... | ${tg_to_dut_if2_mac}
-| | Add IP Neighbor | ${dut_node} | ${vlan2_index} | ${ip4_net2_2}
-| | ... | ${tg_to_dut_if2_mac}
+| | VPP Add IP Neighbor
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ip4_net0_2} | ${tg_to_dut_if1_mac}
+| | VPP Add IP Neighbor
+| | ... | ${dut_node} | ${vlan1_index} | ${ip4_net1_2} | ${tg_to_dut_if2_mac}
+| | VPP Add IP Neighbor
+| | ... | ${dut_node} | ${vlan2_index} | ${ip4_net2_2} | ${tg_to_dut_if2_mac}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copblklistbase-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copblklistbase-func.robot
index 6db16411f8..ef84aa21b0 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copblklistbase-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copblklistbase-func.robot
@@ -12,18 +12,22 @@
# limitations under the License.
*** Settings ***
-| Library | resources.libraries.python.Trace
| Library | resources.libraries.python.Cop
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/traffic.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/l2/l2_xconnect.robot
-| Variables | resources/libraries/python/IPv4NodeAddress.py | ${nodes}
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *COP Security IPv4 Blacklist Tests*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
@@ -53,7 +57,6 @@
| ${cop_dut_ip}= | 16.0.0.0
| ${ip_prefix}= | 24
-| ${nodes_ipv4_addresses}= | ${nodes_ipv4_addr}
| ${fib_table_number}= | 1
@@ -71,17 +74,16 @@
| | And Set interfaces in 3-node circular topology up
| | And Configure L2XC
| | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_tg}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_if1_ip} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_if2_ip} | ${ip_prefix}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_if1_ip_GW} | ${tg_to_dut1_mac}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_if2_ip_GW} | ${tg_to_dut2_mac}
-| | And Vpp Route Add | ${dut1_node}
-| | ... | ${test_dst_ip} | ${ip_prefix} | gateway=${dut1_if2_ip_GW}
-| | ... | interface=${dut1_to_dut2}
+| | And Vpp Route Add | ${dut1_node} | ${test_dst_ip} | ${ip_prefix}
+| | ... | gateway=${dut1_if2_ip_GW} | interface=${dut1_to_dut2}
| | And Add fib table | ${dut1_node} | ${fib_table_number}
| | When COP Add whitelist Entry
| | ... | ${dut1_node} | ${dut1_to_tg} | ip4 | ${fib_table_number}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copwhlistbase-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copwhlistbase-func.robot
index 31ef0faf6f..5fcc74f94a 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copwhlistbase-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-copwhlistbase-func.robot
@@ -12,18 +12,22 @@
# limitations under the License.
*** Settings ***
-| Library | resources.libraries.python.Trace
| Library | resources.libraries.python.Cop
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/traffic.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/l2/l2_xconnect.robot
-| Variables | resources/libraries/python/IPv4NodeAddress.py | ${nodes}
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *COP Security IPv4 Whitelist Tests*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
@@ -53,7 +57,6 @@
| ${cop_dut_ip}= | 16.0.0.0
| ${ip_prefix}= | 24
-| ${nodes_ipv4_addresses}= | ${nodes_ipv4_addr}
| ${fib_table_number}= | 1
@@ -71,20 +74,19 @@
| | And Set interfaces in 3-node circular topology up
| | And Configure L2XC
| | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_tg}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_if1_ip} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_if2_ip} | ${ip_prefix}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_if1_ip_GW} | ${tg_to_dut1_mac}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_if2_ip_GW} | ${tg_to_dut2_mac}
-| | And Vpp Route Add | ${dut1_node}
-| | ... | ${test_dst_ip} | ${ip_prefix} | gateway=${dut1_if2_ip_GW}
-| | ... | interface=${dut1_to_dut2}
+| | And Vpp Route Add | ${dut1_node} | ${test_dst_ip} | ${ip_prefix}
+| | ... | gateway=${dut1_if2_ip_GW} | interface=${dut1_to_dut2}
| | And Add fib table | ${dut1_node} | ${fib_table_number}
-| | And Vpp Route Add | ${dut1_node}
-| | ... | ${cop_dut_ip} | ${ip_prefix} | vrf=${fib_table_number} | local=${TRUE}
+| | And Vpp Route Add | ${dut1_node} | ${cop_dut_ip} | ${ip_prefix}
+| | ... | vrf=${fib_table_number} | local=${TRUE}
| | When COP Add whitelist Entry
| | ... | ${dut1_node} | ${dut1_to_tg} | ip4 | ${fib_table_number}
| | And COP interface enable or disable | ${dut1_node} | ${dut1_to_tg} | enable
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-iaclbase-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-iaclbase-func.robot
index 0c07bf6674..edc9480260 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-iaclbase-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-iaclbase-func.robot
@@ -12,19 +12,24 @@
# limitations under the License.
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
+| Library | resources.libraries.python.Classify.Classify
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/l2/l2_traffic.robot
+| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/counters.robot
+| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
-| Resource | resources/libraries/robot/l2/l2_xconnect.robot
-| Resource | resources/libraries/robot/l2/l2_traffic.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Classify.Classify
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *IPv4 routing with ingress ACL test cases*
| ...
| ... | Encapsulations: Eth-IPv4 on links TG-DUT1, TG-DUT2, DUT1-DUT2. IPv4
@@ -57,11 +62,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -101,11 +106,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -148,11 +153,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -202,11 +207,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -242,11 +247,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -282,11 +287,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -323,11 +328,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -364,11 +369,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -406,11 +411,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -447,11 +452,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
@@ -488,11 +493,11 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4arp-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4arp-func.robot
index 01b3f13806..4f2bcfeb97 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4arp-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4arp-func.robot
@@ -12,17 +12,22 @@
# limitations under the License.
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/counters.robot
+| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
-| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *IPv4 ARP test cases*
| ...
| ... | RFC826 ARP: Eth-IPv4 and Eth-ARP on links TG-DUT1, TG-DUT2, DUT1-DUT2:
@@ -50,9 +55,9 @@
| | And Set interfaces in 3-node circular topology up
| | And Configure L2XC
| | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_tg}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
| | Then Send packet and verify ARP request | ${tg_node}
| | ... | ${test_src_ip} | ${dut1_to_dut2_ip_GW} | ${tg_to_dut1}
@@ -69,14 +74,13 @@
| | And Set interfaces in 3-node circular topology up
| | And Configure L2XC
| | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_tg}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
| | And Vpp Route Add
| | ... | ${dut1_node} | ${test_dst_ip} | ${prefix_length}
| | ... | gateway=${dut1_to_dut2_ip_GW} | interface=${dut1_to_dut2}
-| | ... | resolve_attempts=${NONE}
| | Then Send packet and verify ARP request | ${tg_node}
| | ... | ${test_src_ip} | ${test_dst_ip} | ${tg_to_dut1}
| | ... | ${dut1_to_tg_mac} | ${tg_to_dut2} | ${dut1_to_dut2_mac}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpclient-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpclient-func.robot
index db32c07ab1..3dbb2abb11 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpclient-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpclient-func.robot
@@ -12,15 +12,20 @@
# limitations under the License.
*** Settings ***
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/features/dhcp_client.robot
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/features/dhcp_client.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_DOUBLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
-| Documentation | *DHCPv4 Client related test cases*
+| ...
+| Documentation | DHCPv4 Client related test cases
*** Variables ***
| ${client_hostname}= | dhcp-client
@@ -63,8 +68,7 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | gateway=${NONE}
-| | ... | interface=local | use_sw_index=${FALSE} | resolve_attempts=${NONE}
+| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | local=${TRUE}
| | When Set DHCP client on Interface | ${dut_node} | ${dut_to_tg_if1}
| | Then Verify DHCP REQUEST after OFFER | ${tg_node} | ${tg_to_dut_if1}
| | ... | ${tg_to_dut_if1_mac} | ${server_ip}
@@ -79,8 +83,7 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | gateway=${NONE}
-| | ... | interface=local | use_sw_index=${FALSE} | resolve_attempts=${NONE}
+| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | local=${TRUE}
| | When Set DHCP client on Interface | ${dut_node} | ${dut_to_tg_if1}
| | Then Run Keyword And Expect Error | DHCP REQUEST Rx timeout
| | ... | Verify DHCP REQUEST after OFFER | ${tg_node} | ${tg_to_dut_if1}
@@ -96,15 +99,14 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | gateway=${NONE}
-| | ... | interface=local | use_sw_index=${FALSE} | resolve_attempts=${NONE}
+| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | local=${TRUE}
| | When Set DHCP client on Interface | ${dut_node} | ${dut_to_tg_if1}
| | And Configure IP on client via DHCP
| | ... | ${tg_node} | ${tg_to_dut_if1}
| | ... | ${tg_to_dut_if1_mac} | ${server_ip}
| | ... | ${client_ip} | ${client_mask}
| | ... | ${lease_time}
-| | And Add Arp On Dut | ${dut_node} | ${dut_to_tg_if1} | ${server_ip}
+| | And VPP Add IP Neighbor | ${dut_node} | ${dut_to_tg_if1} | ${server_ip}
| | ... | ${tg_to_dut_if1_mac}
| | Then Send ICMP echo request and verify answer
| | ... | ${tg_node} | ${tg_to_dut_if1}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpproxy-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpproxy-func.robot
index e655cf6fd9..24514d018b 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpproxy-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4dhcpproxy-func.robot
@@ -12,14 +12,19 @@
# limitations under the License.
*** Settings ***
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/features/dhcp_proxy.robot
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/features/dhcp_proxy.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_DOUBLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *DHCPv4 proxy test cases*
| ...
| ... | *[Top] Network Topologies:* TG = DUT
@@ -53,13 +58,12 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | gateway=${NONE}
-| | ... | interface=local | use_sw_index=${FALSE} | resolve_attempts=${NONE}
-| | And Set Interface Address | ${dut_node}
+| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | local=${True}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if1} | ${dut_to_tg_if1_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut_node}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if2} | ${dut_to_tg_if2_ip} | ${prefix_length}
-| | And Add Arp On Dut | ${dut_node} | ${dut_to_tg_if2} | ${dhcp_server_ip}
+| | And VPP Add IP Neighbor | ${dut_node} | ${dut_to_tg_if2} | ${dhcp_server_ip}
| | ... | ${tg_to_dut_if2_mac}
| | When DHCP Proxy Config | ${dut_node} | ${dhcp_server_ip}
| | ... | ${dut_to_tg_if1_ip}
@@ -77,13 +81,12 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | gateway=${NONE}
-| | ... | interface=local | use_sw_index=${FALSE} | resolve_attempts=${NONE}
-| | And Set Interface Address | ${dut_node}
+| | And VPP Route Add | ${dut_node} | 255.255.255.255 | 32 | local=${True}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if1} | ${dut_to_tg_if1_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut_node}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if2} | ${dut_to_tg_if2_ip} | ${prefix_length}
-| | And Add Arp On Dut | ${dut_node} | ${dut_to_tg_if2} | ${dhcp_server_ip}
+| | And VPP Add IP Neighbor | ${dut_node} | ${dut_to_tg_if2} | ${dhcp_server_ip}
| | ... | ${tg_to_dut_if2_mac}
| | When DHCP Proxy Config | ${dut_node} | ${dhcp_server_ip}
| | ... | ${dut_to_tg_if1_ip}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4ecmp-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4ecmp-func.robot
index fcdfe98b2a..4738699803 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4ecmp-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4ecmp-func.robot
@@ -13,16 +13,21 @@
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/counters.robot
+| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_DOUBLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *Ipv4 Multipath routing test cases*
| ...
| ... | *[Top] Network topologies:* TG=DUT 2-node topology with two links\
@@ -54,22 +59,20 @@
| | Given Configure path in 2-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
| | And Set interfaces in 2-node circular topology up
-| | And Set Interface Address | ${dut_node}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if2} | ${ip_1} | ${prefix_length}
-| | And Set Interface Address | ${dut_node}
+| | And VPP Interface Set IP Address | ${dut_node}
| | ... | ${dut_to_tg_if1} | ${ip_2} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut_node} | ${dut_to_tg_if1} | ${neighbor_1_ip} | ${neighbor_1_mac}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut_node} | ${dut_to_tg_if1} | ${neighbor_2_ip} | ${neighbor_2_mac}
-| | When Vpp Route Add
-| | ... | ${dut_node} | ${test_dst_ip} | ${prefix_length}
+| | When Vpp Route Add | ${dut_node} | ${test_dst_ip} | ${prefix_length}
| | ... | gateway=${neighbor_1_ip} | interface=${dut_to_tg_if1}
-| | ... | resolve_attempts=${NONE} | multipath=${TRUE}
-| | And Vpp Route Add
-| | ... | ${dut_node} | ${test_dst_ip} | ${prefix_length}
+| | ... | multipath=${TRUE}
+| | And Vpp Route Add | ${dut_node} | ${test_dst_ip} | ${prefix_length}
| | ... | gateway=${neighbor_2_ip} | interface=${dut_to_tg_if1}
-| | ... | resolve_attempts=${NONE} | multipath=${TRUE}
+| | ... | multipath=${TRUE}
| | Then Send packets and verify multipath routing | ${tg_node}
| | ... | ${tg_to_dut_if2} | ${tg_to_dut_if1} | ${test_src_ip} | ${test_dst_ip}
| | ... | ${tg_to_dut_if2_mac} | ${dut_to_tg_if2_mac} | ${dut_to_tg_if1_mac}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4proxyarp-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4proxyarp-func.robot
index 4348c734ca..da1988defe 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4proxyarp-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-ip4proxyarp-func.robot
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2019 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:
@@ -12,16 +12,21 @@
# limitations under the License.
*** Settings ***
+| Library | resources.libraries.python.ProxyArp
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Trace
-| Library | resources.libraries.python.ProxyArp
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *RFC1027 Proxy ARP test cases*
| ...
| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with
@@ -59,13 +64,12 @@
| | And Set interfaces in 3-node circular topology up
| | ${dut1_to_tg_name}= | Get interface name | ${dut1_node} | ${dut1_to_tg}
| | ${tg_to_dut1_name}= | Get interface name | ${tg_node} | ${tg_to_dut1}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
| | And Vpp Add Proxy ARP | ${dut1_node} | ${lo_ip4_addr} | ${hi_ip4_addr}
| | And Vpp Proxy ARP Interface Enable | ${dut1_node} | ${dut1_to_tg_name}
-| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name}
-| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac}
-| | ... | ${tg_to_dut1_ip} | ${pass_test_ip}
+| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name} | ${tg_to_dut1_mac}
+| | ... | ${dut1_to_tg_mac} | ${tg_to_dut1_ip} | ${pass_test_ip}
| TC02: DUT sends ARP reply on behalf of another machine from beginning of the IP range
| | [Documentation]
@@ -81,13 +85,12 @@
| | And Set interfaces in 3-node circular topology up
| | ${dut1_to_tg_name}= | Get interface name | ${dut1_node} | ${dut1_to_tg}
| | ${tg_to_dut1_name}= | Get interface name | ${tg_node} | ${tg_to_dut1}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
| | And Vpp Add Proxy ARP | ${dut1_node} | ${lo_ip4_addr} | ${hi_ip4_addr}
| | And Vpp Proxy ARP Interface Enable | ${dut1_node} | ${dut1_to_tg_name}
-| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name}
-| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac}
-| | ... | ${tg_to_dut1_ip} | ${pass_test_lo_ip}
+| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name} | ${tg_to_dut1_mac}
+| | ... | ${dut1_to_tg_mac} | ${tg_to_dut1_ip} | ${pass_test_lo_ip}
| TC03: DUT sends ARP reply on behalf of another machine from end of the IP range
| | [Documentation]
@@ -103,13 +106,12 @@
| | And Set interfaces in 3-node circular topology up
| | ${dut1_to_tg_name}= | Get interface name | ${dut1_node} | ${dut1_to_tg}
| | ${tg_to_dut1_name}= | Get interface name | ${tg_node} | ${tg_to_dut1}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
| | And Vpp Add Proxy ARP | ${dut1_node} | ${lo_ip4_addr} | ${hi_ip4_addr}
| | And Vpp Proxy ARP Interface Enable | ${dut1_node} | ${dut1_to_tg_name}
-| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name}
-| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac}
-| | ... | ${tg_to_dut1_ip} | ${pass_test_hi_ip}
+| | Then Send ARP Request | ${tg_node} | ${tg_to_dut1_name} | ${tg_to_dut1_mac}
+| | ... | ${dut1_to_tg_mac} | ${tg_to_dut1_ip} | ${pass_test_hi_ip}
| TC04: DUT does not send ARP reply on behalf of another machine from below of the IP range
| | [Documentation]
@@ -125,13 +127,13 @@
| | And Set interfaces in 3-node circular topology up
| | ${dut1_to_tg_name}= | Get interface name | ${dut1_node} | ${dut1_to_tg}
| | ${tg_to_dut1_name}= | Get interface name | ${tg_node} | ${tg_to_dut1}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
| | And Vpp Add Proxy ARP | ${dut1_node} | ${lo_ip4_addr} | ${hi_ip4_addr}
| | And Vpp Proxy ARP Interface Enable | ${dut1_node} | ${dut1_to_tg_name}
| | Then ARP request should fail | ${tg_node} | ${tg_to_dut1_name}
-| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac}
-| | ... | ${tg_to_dut1_ip} | ${fail_test_lo_ip}
+| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac} | ${tg_to_dut1_ip}
+| | ... | ${fail_test_lo_ip}
| TC05: DUT does not send ARP reply on behalf of another machine from above of the IP range
| | [Documentation]
@@ -147,10 +149,10 @@
| | And Set interfaces in 3-node circular topology up
| | ${dut1_to_tg_name}= | Get interface name | ${dut1_node} | ${dut1_to_tg}
| | ${tg_to_dut1_name}= | Get interface name | ${tg_node} | ${tg_to_dut1}
-| | When Set Interface Address | ${dut1_node}
+| | When VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
| | And Vpp Add Proxy ARP | ${dut1_node} | ${lo_ip4_addr} | ${hi_ip4_addr}
| | And Vpp Proxy ARP Interface Enable | ${dut1_node} | ${dut1_to_tg_name}
| | Then ARP request should fail | ${tg_node} | ${tg_to_dut1_name}
-| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac}
-| | ... | ${tg_to_dut1_ip} | ${fail_test_hi_ip}
+| | ... | ${tg_to_dut1_mac} | ${dut1_to_tg_mac} | ${tg_to_dut1_ip}
+| | ... | ${fail_test_hi_ip}
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-rpf-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-rpf-func.robot
index 63db07e49d..c98a05b344 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4base-rpf-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4base-rpf-func.robot
@@ -12,17 +12,23 @@
# limitations under the License.
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
+| Library | resources.libraries.python.IPUtil
+| Library | resources.libraries.python.Trace
+| ...
+| Resource | resources/libraries/robot/ip/ip4.robot
+| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/counters.robot
+| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
-| Resource | resources/libraries/robot/ip/ip4.robot
-| Resource | resources/libraries/robot/l2/l2_xconnect.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Library | resources.libraries.python.Trace
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_SINGLE_LINK_TOPO
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *Source RPF check on IPv4 test cases*
| ...
| ... | *[Top] Network Topologies:* TG - DUT1 - DUT2 - TG
@@ -54,18 +60,18 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
| | ... | ${dut1_node} | ${test_dst_ip} | ${prefix_length}
| | ... | gateway=${dut1_to_dut2_ip_GW} | interface=${dut1_to_dut2}
| | ... | resolve_attempts=${NONE}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_to_tg_ip_GW}
| | ... | ${tg_to_dut1_mac}
| | And Vpp Route Add
@@ -106,18 +112,18 @@
| | Given Configure path in 3-node circular topology
| | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']}
| | And Set interfaces in 3-node circular topology up
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length}
-| | And Set Interface Address | ${dut1_node}
+| | And VPP Interface Set IP Address | ${dut1_node}
| | ... | ${dut1_to_dut2} | ${dut1_to_dut2_ip} | ${prefix_length}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip_GW}
| | ... | ${tg_to_dut2_mac}
| | And Vpp Route Add
| | ... | ${dut1_node} | ${test_dst_ip} | ${prefix_length}
| | ... | gateway=${dut1_to_dut2_ip_GW} | interface=${dut1_to_dut2}
| | ... | resolve_attempts=${NONE}
-| | And Add Arp On Dut
+| | And VPP Add IP Neighbor
| | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_to_tg_ip_GW}
| | ... | ${tg_to_dut1_mac}
| | And Vpp Route Add
diff --git a/tests/vpp/func/ip4/eth2p-ethip4-ip4basevrf-func.robot b/tests/vpp/func/ip4/eth2p-ethip4-ip4basevrf-func.robot
index 0f71fab5fe..da2128f0de 100644
--- a/tests/vpp/func/ip4/eth2p-ethip4-ip4basevrf-func.robot
+++ b/tests/vpp/func/ip4/eth2p-ethip4-ip4basevrf-func.robot
@@ -12,18 +12,23 @@
# limitations under the License.
*** Settings ***
-| Resource | resources/libraries/robot/shared/default.robot
+| Library | resources.libraries.python.IPUtil
+| Library | resources.libraries.python.Trace
+| ...
| Resource | resources/libraries/robot/ip/ip4.robot
| Resource | resources/libraries/robot/ip/ip6.robot
+| Resource | resources/libraries/robot/l2/l2_traffic.robot
+| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/shared/interfaces.robot
| Resource | resources/libraries/robot/shared/testing_path.robot
| Resource | resources/libraries/robot/shared/traffic.robot
-| Resource | resources/libraries/robot/l2/l2_traffic.robot
-| Library | resources.libraries.python.Trace
-| Library | resources.libraries.python.IPUtil
+| ...
| Force Tags | HW_ENV | VM_ENV | 3_NODE_DOUBLE_LINK_TOPO | SKIP_VPP_PATCH
+| ...
| Test Setup | Set up functional test
+| ...
| Test Teardown | Tear down functional test
+| ...
| Documentation | *Vpn routed forwarding - baseline IPv4*
| ... | *[Top] Network Topologies:* TG=DUT1=DUT2=TG 3-node topology with two
| ... | links in between nodes.
@@ -301,30 +306,22 @@
| | ... | addresses are subsequently set on interfaces, and ARP is set for
| | ... | neighbors. The last setting is route for each fib table.
| | ...
-| | ${dut1_if1_idx}= | Get Interface SW Index
-| | ... | ${dut1_node} | ${dut1_to_dut2_if1}
-| | ${dut1_if2_idx}= | Get Interface SW Index
-| | ... | ${dut1_node} | ${dut1_to_dut2_if2}
-| | ${dut2_if1_idx}= | Get Interface SW Index
-| | ... | ${dut2_node} | ${dut2_to_dut1_if1}
-| | ${dut2_if2_idx}= | Get Interface SW Index
-| | ... | ${dut2_node} | ${dut2_to_dut1_if2}
| | And Add fib table | ${dut1_node} | ${fib_table_1}
| | And Add fib table | ${dut1_node} | ${fib_table_2}
| | And Add fib table | ${dut2_node} | ${fib_table_1}
| | And Add fib table | ${dut2_node} | ${fib_table_2}
-| | And Vpp Route Add | ${dut1_node}
-| | ... | ${tg_dut2_ip1} | ${ip_prefix} | gateway=${fib_table_1}
-| | ... | interface=via ${dut2_to_dut1_ip1} sw_if_index ${dut1_if1_idx} multipath
-| | And Vpp Route Add | ${dut1_node}
-| | ... | ${tg_dut2_ip2} | ${ip_prefix} | gateway=${fib_table_2}
-| | ... | interface=via ${dut1_to_dut2_ip2} sw_if_index ${dut1_if2_idx} multipath
-| | And Vpp Route Add | ${dut2_node}
-| | ... | ${tg_dut1_ip1} | ${ip_prefix} | gateway=${fib_table_1}
-| | ... | interface=via ${dut2_to_dut1_ip1} sw_if_index ${dut2_if1_idx} multipath
-| | And Vpp Route Add | ${dut2_node}
-| | ... | ${tg_dut1_ip2} | ${ip_prefix} | gateway=${fib_table_2}
-| | ... | interface=via ${dut2_to_dut1_ip2} sw_if_index ${dut2_if2_idx} multipath
+| | And Vpp Route Add | ${dut1_node} | ${tg_dut2_ip1} | ${ip_prefix}
+| | ... | vrf=${fib_table_1} | interface=${dut1_to_dut2_if1}
+| | ... | gateway=${dut1_to_dut2_ip2} | multipath=${True}
+| | And Vpp Route Add | ${dut1_node} | ${tg_dut2_ip2} | ${ip_prefix}
+| | ... | vrf=${fib_table_2} | interface=${dut1_to_dut2_if2}
+| | ... | gateway=${dut1_to_dut2_ip2} | multipath=${True}
+| | And Vpp Route Add | ${dut2_node} | ${tg_dut1_ip1} | ${ip_prefix}
+| | ... | vrf=${fib_table_1} | interface=${dut2_to_dut1_if1}
+| | ... | gateway=${dut2_to_dut1_ip1} | multipath=${True}
+| | And Vpp Route Add | ${dut2_node} | ${tg_dut1_ip2} | ${ip_prefix}
+| | ... | vrf=${fib_table_2} | interface=${dut2_to_dut1_if2}
+| | ... | gateway=${dut2_to_dut1_ip2} | multipath=${True}
| | Assign Interface To Fib Table
| | ... | ${dut1_node} | ${dut1_to_dut2_if1} | ${fib_table_1}
@@ -344,44 +341,44 @@
| | Assign Interface To Fib Table
| | ... | ${dut2_node} | ${dut2_to_tg_if2} | ${fib_table_2}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_tg_if1} | ${dut1_to_tg_ip1} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_tg_if2} | ${dut1_to_tg_ip2} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_dut2_if1}
| | ... | ${dut1_to_dut2_ip1} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut1_node} | ${dut1_to_dut2_if2}
| | ... | ${dut1_to_dut2_ip2} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut2_node} | ${dut2_to_tg_if1} | ${dut2_to_tg_ip1} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut2_node} | ${dut2_to_tg_if2} | ${dut2_to_tg_ip2} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut2_node} | ${dut2_to_dut1_if1}
| | ... | ${dut2_to_dut1_ip1} | ${ip_prefix}
-| | And Set Interface Address
+| | And VPP Interface Set IP Address
| | ... | ${dut2_node} | ${dut2_to_dut1_if2}
| | ... | ${dut2_to_dut1_ip2} | ${ip_prefix}
-| | And Add Arp On Dut | ${dut1_node} | ${dut1_to_tg_if1}
+| | And VPP Add IP Neighbor | ${dut1_node} | ${dut1_to_tg_if1}
| | ... | ${tg_dut1_ip1} | ${tg_to_dut1_if1_mac}
-| | And Add Arp On Dut | ${dut1_node} | ${dut1_to_dut2_if1}
+| | And VPP Add IP Neighbor | ${dut1_node} | ${dut1_to_dut2_if1}
| | ... | ${dut2_to_dut1_ip1} | ${dut2_to_dut1_if1_mac}
-| | And Add Arp On Dut | ${dut2_node} | ${dut2_to_tg_if1}
+| | And VPP Add IP Neighbor | ${dut2_node} | ${dut2_to_tg_if1}
| | ... | ${tg_dut2_ip1} | ${tg_to_dut2_if1_mac}
-| | And Add Arp On Dut | ${dut2_node} | ${dut2_to_dut1_if1}
+| | And VPP Add IP Neighbor | ${dut2_node} | ${dut2_to_dut1_if1}
| | ... | ${dut1_to_dut2_ip1} | ${dut1_to_dut2_if1_mac}
-| | And Add Arp On Dut | ${dut1_node} | ${dut1_to_tg_if2}
+| | And VPP Add IP Neighbor | ${dut1_node} | ${dut1_to_tg_if2}
| | ... | ${tg_dut1_ip2} | ${tg_to_dut1_if2_mac}
-| | And Add Arp On Dut | ${dut1_node} | ${dut1_to_dut2_if2}
+| | And VPP Add IP Neighbor | ${dut1_node} | ${dut1_to_dut2_if2}
| | ... | ${dut2_to_dut1_ip2} | ${dut2_to_dut1_if2_mac}
-| | And Add Arp On Dut | ${dut2_node} | ${dut2_to_tg_if2}
+| | And VPP Add IP Neighbor | ${dut2_node} | ${dut2_to_tg_if2}
| | ... | ${tg_dut2_ip2} | ${tg_to_dut2_if2_mac}
-| | And Add Arp On Dut | ${dut2_node} | ${dut2_to_dut1_if2}
+| | And VPP Add IP Neighbor | ${dut2_node} | ${dut2_to_dut1_if2}
| | ... | ${dut1_to_dut2_ip2} | ${dut1_to_dut2_if2_mac}
| | And Vpp Route Add | ${dut1_node} | ${tg_dut2_ip1} | ${ip_prefix}