X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=tests%2Fvpp%2Fdevice%2Fip6%2Feth2p-ethip6-ip6base-dev.robot;h=424ff3e689dd00aad8c87f1f61cab3a4d11f6636;hp=e1ba73bf68231b0994c08d084307134fa763eecb;hb=ccef9f4e7e2e8cb04cb2de5e43e59d4fd15cf8b6;hpb=08fc34b6ba780d227a1327274d434823118a4c77 diff --git a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-dev.robot b/tests/vpp/device/ip6/eth2p-ethip6-ip6base-dev.robot index e1ba73bf68..424ff3e689 100644 --- a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-dev.robot +++ b/tests/vpp/device/ip6/eth2p-ethip6-ip6base-dev.robot @@ -12,32 +12,34 @@ # limitations under the License. *** Settings *** -| Resource | resources/libraries/robot/ip/ip6.robot | Resource | resources/libraries/robot/shared/default.robot +| Resource | resources/libraries/robot/ip/ip6.robot | Resource | resources/libraries/robot/shared/interfaces.robot | Resource | resources/libraries/robot/shared/traffic.robot | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | ... | FUNCTEST | IP6FWD | BASE | ETH | IP6BASE | ... -| Test Setup | Set up VPP device test -| ... -| Test Teardown | Tear down VPP device test +| Suite Setup | Setup suite single link +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | ... | Documentation | *IPv6 routing test cases* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-ICMPv6 for IPv6 routing on both\ -| ... | links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and two\ -| ... | static IPv6 /64 route entries. -| ... | *[Ver] TG verification:* Test ICMPv6 Echo Request packets are sent in\ -| ... | one direction by TG on links to DUT1; on receive TG verifies packets\ +| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-ICMPv6 for IPv6 routing on \ +| ... | both links. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ +| ... | two static IPv6 /64 route entries. +| ... | *[Ver] TG verification:* Test ICMPv6 Echo Request packets are sent in \ +| ... | one direction by TG on links to DUT1; on receive TG verifies packets \ | ... | for correctness and their IPv6 src-addr, dst-addr and MAC addresses. | ... | *[Ref] Applicable standard specifications:* RFC2460, RFC4443, RFC4861 *** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so +| ${nic_name}= | virtual | ${tg_to_dut_if1_ip6}= | 2001:1::2 | ${tg_to_dut_if2_ip6}= | 2001:2::2 | ${dut_to_tg_if1_ip6}= | 2001:1::1 @@ -49,35 +51,42 @@ *** Test Cases *** | tc01-eth2p-ethicmpv6-ip6base-device_echo-req-to-dut-ingress-interface | | [Documentation] -| | ... | Make TG send ICMPv6 Echo Req to DUT1 ingress interface. Make TG\ +| | ... | Make TG send ICMPv6 Echo Req to DUT1 ingress interface. Make TG \ | | ... | verify ICMPv6 Echo Reply is correct. | | ... | | ${hops}= | Set Variable | ${0} | | ... -| | Given Configure path in 2-node circular topology +| | Given Add PCI devices to all DUTs +| | And Apply startup configuration on all VPP DUTs +| | And VPP Enable Traces On All Duts | ${nodes} +| | When Configure path in 2-node circular topology | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Configure IPv6 forwarding in circular topology | ${tg_to_dut_if1_ip6} | | ... | ${tg_to_dut_if2_ip6} | ${dut_to_tg_if1_ip6} | ${dut_to_tg_if2_ip6} | | And Suppress ICMPv6 router advertisement message | ${nodes} -| | When All Vpp Interfaces Ready Wait | ${nodes} +| | And All Vpp Interfaces Ready Wait | ${nodes} | | Then Send IPv6 echo request packet and verify headers | ${tg_node} | | ... | ${tg_to_dut_if1} | ${dut_node} | ${dut_to_tg_if1} | | ... | ${tg_to_dut_if1_ip6} | ${dut_to_tg_if1_ip6} | ${dut_to_tg_if1_mac} | | ... | ${hops} +| | Get interface Ipv6 addresses | ${nodes['DUT1']} | ${dut_to_tg_if1} | tc02-eth2p-ethicmpv6-ip6base-device_echo-req-to-dut-egress-interface | | [Documentation] -| | ... | Make TG send ICMPv6 Echo Req towards DUT1 egress interface. Make TG\ +| | ... | Make TG send ICMPv6 Echo Req towards DUT1 egress interface. Make TG \ | | ... | verify ICMPv6 Echo Reply is correct. | | ... | | ${hops}= | Set Variable | ${0} | | ... -| | Given Configure path in 2-node circular topology +| | Given Add PCI devices to all DUTs +| | And Apply startup configuration on all VPP DUTs +| | And VPP Enable Traces On All Duts | ${nodes} +| | When Configure path in 2-node circular topology | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Configure IPv6 forwarding in circular topology | ${tg_to_dut_if1_ip6} | | ... | ${tg_to_dut_if2_ip6} | ${dut_to_tg_if1_ip6} | ${dut_to_tg_if2_ip6} | | And Suppress ICMPv6 router advertisement message | ${nodes} -| | When All Vpp Interfaces Ready Wait | ${nodes} +| | And All Vpp Interfaces Ready Wait | ${nodes} | | Then Send IPv6 echo request packet and verify headers | ${tg_node} | | ... | ${tg_to_dut_if1} | ${dut_node} | ${dut_to_tg_if2} | | ... | ${tg_to_dut_if1_ip6} | ${dut_to_tg_if2_ip6} | ${dut_to_tg_if1_mac} @@ -85,18 +94,21 @@ | tc03-eth2p-ethicmpv6-ip6base-device_echo-req-to-tg-interface-for-local-ipv4-address | | [Documentation] -| | ... | Make TG send ICMPv6 Echo Req between its interfaces across DUT1 for\ -| | ... | locally connected IPv6 addresses. Make TG verify ICMPv6 Echo Replies\ +| | ... | Make TG send ICMPv6 Echo Req between its interfaces across DUT1 for \ +| | ... | locally connected IPv6 addresses. Make TG verify ICMPv6 Echo Replies \ | | ... | are correct. | | ... | | ${hops}= | Set Variable | ${1} | | ... -| | Given Configure path in 2-node circular topology +| | Given Add PCI devices to all DUTs +| | And Apply startup configuration on all VPP DUTs +| | And VPP Enable Traces On All Duts | ${nodes} +| | When Configure path in 2-node circular topology | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Configure IPv6 forwarding in circular topology | ${tg_to_dut_if1_ip6} | | ... | ${tg_to_dut_if2_ip6} | ${dut_to_tg_if1_ip6} | ${dut_to_tg_if2_ip6} | | And Suppress ICMPv6 router advertisement message | ${nodes} -| | When All Vpp Interfaces Ready Wait | ${nodes} +| | And All Vpp Interfaces Ready Wait | ${nodes} | | Then Send IPv6 echo request packet and verify headers | ${tg_node} | | ... | ${tg_to_dut_if1} | ${tg_node} | ${tg_to_dut_if2} | | ... | ${tg_to_dut_if1_ip6} | ${tg_to_dut_if2_ip6} | ${dut_to_tg_if1_mac} @@ -104,13 +116,16 @@ | tc04-eth2p-ethicmpv6-ip6base-device_echo-req-to-tg-interface-for-remote-host-ipv4-address | | [Documentation] -| | ... | Make TG send ICMPv6 Echo Req between its interfaces across DUT1 for\ -| | ... | remote host IPv6 addresses. Make TG verify ICMPv6 Echo Replies are\ +| | ... | Make TG send ICMPv6 Echo Req between its interfaces across DUT1 for \ +| | ... | remote host IPv6 addresses. Make TG verify ICMPv6 Echo Replies are \ | | ... | correct. | | ... | | ${hops}= | Set Variable | ${1} | | ... -| | Given Configure path in 2-node circular topology +| | Given Add PCI devices to all DUTs +| | And Apply startup configuration on all VPP DUTs +| | And VPP Enable Traces On All Duts | ${nodes} +| | When Configure path in 2-node circular topology | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} | | And Configure IPv6 forwarding in circular topology | ${tg_to_dut_if1_ip6} | | ... | ${tg_to_dut_if2_ip6} | ${dut_to_tg_if1_ip6} | ${dut_to_tg_if2_ip6} @@ -118,7 +133,7 @@ | | ... | remote_host2_ip6=${remote_host2_ip6} | | ... | remote_host_ip6_prefix=${remote_host_ip6_prefix} | | And Suppress ICMPv6 router advertisement message | ${nodes} -| | When All Vpp Interfaces Ready Wait | ${nodes} +| | And All Vpp Interfaces Ready Wait | ${nodes} | | Then Send IPv6 echo request packet and verify headers | ${tg_node} | | ... | ${tg_to_dut_if1} | ${tg_node} | ${tg_to_dut_if2} | | ... | ${remote_host1_ip6} | ${remote_host2_ip6} | ${dut_to_tg_if1_mac}