CSIT-562 HC Test: Persistence suite rework, part1
[csit.git] / tests / func / honeycomb / mgmt-cfg-intip4-intip6-apihc-apivat-func.robot
index 1a8d400..1d2b4ae 100644 (file)
 *** Variables ***
 # Interface to run tests on.
 | ${interface}= | ${node['interfaces']['port1']['name']}
-# Configuration which will be set and verified during tests.
-| @{ipv4_address}= | 192.168.0.2 | ${24}
-| @{ipv4_address2}= | 192.168.1.2 | ${24}
-| ${ipv4_mask}= | 255.255.255.0
-| ${ipv4_prefix}= | ${24}
-| @{ipv4_neighbor}= | 192.168.0.4 | 08:00:27:c0:5d:37
-| @{ipv4_neighbor2}= | 192.168.1.4 | 08:00:27:c0:5d:37
-| &{ipv4_settings}= | mtu=${9000}
-| @{ipv6_address}= | 10::10 | ${64}
-| @{ipv6_address2}= | 11::10 | ${64}
-| @{ipv6_neighbor}= | 10::11 | 08:00:27:c0:5d:37
-| @{ipv6_neighbor2}= | 11::11 | 08:00:27:c0:5d:37
-| &{ipv6_settings}= | enabled=${True} | forwarding=${True} | mtu=${9000}
-| ... | dup-addr-detect-transmits=${5}
-| &{ethernet}= | mtu=${9000}
-| &{routing}= | vrf-id=${27}
-| &{vxlan_settings}= | src=10.0.1.20 | dst=10.0.3.20 | vni=${1000}
-| ... | encap-vrf-id=${1000}
 
 *** Settings ***
 | Resource | resources/libraries/robot/default.robot
@@ -39,7 +21,8 @@
 | Resource | resources/libraries/robot/honeycomb/honeycomb.robot
 | Resource | resources/libraries/robot/testing_path.robot
 | Resource | resources/libraries/robot/ipv6.robot
-| Force Tags | honeycomb_sanity | honeycomb_odl
+| Variables | resources/test_data/honeycomb/interface_ip.py
+| Force Tags | HC_FUNC
 | Suite Teardown
 | | ... | Restart Honeycomb and VPP | ${node}
 | Documentation | *Honeycomb interface management test suite.*
 | | Given IPv4 address from Honeycomb should be empty | ${node} | ${interface}
 | | And ipv4 address from VAT should be empty | ${node} | ${interface}
 | | When Honeycomb sets interface ipv4 address | ${node} | ${interface}
-| | ... | ${ipv4_address[0]} | ${ipv4_mask}
+| | ... | ${ipv4_address} | ${ipv4_mask}
 | | Then IPv4 address from Honeycomb should be
-| | ... | ${node} | ${interface} | ${ipv4_address[0]} | ${ipv4_prefix}
+| | ... | ${node} | ${interface} | ${ipv4_address} | ${ipv4_prefix}
 | | And IPv4 address from VAT should be
-| | ... | ${node} | ${interface} | @{ipv4_address} | ${ipv4_mask}
+| | ... | ${node} | ${interface} | ${ipv4_address}
+| | ... | ${ipv4_prefix} | ${ipv4_mask}
 
 | TC03: Honeycomb removes IPv4 address from interface
 | | [Documentation] | Check if Honeycomb API can remove configured ipv4\
 | | ... | addresses from interface.
 | | Given IPv4 address from Honeycomb should be
-| | ... | ${node} | ${interface} | @{ipv4_address}
+| | ... | ${node} | ${interface} | ${ipv4_address} | ${ipv4_prefix}
 | | And IPv4 address from VAT should be
-| | ... | ${node} | ${interface} | @{ipv4_address} | ${ipv4_mask}
+| | ... | ${node} | ${interface} | ${ipv4_address}
+| | ... | ${ipv4_prefix} | ${ipv4_mask}
 | | When Honeycomb removes interface ipv4 addresses | ${node} | ${interface}
 | | Then IPv4 address from Honeycomb should be empty | ${node} | ${interface}
 | | And ipv4 address from VAT should be empty | ${node} | ${interface}
 | | Given IPv4 address from Honeycomb should be empty | ${node} | ${interface}
 | | And ipv4 address from VAT should be empty | ${node} | ${interface}
 | | When Honeycomb sets interface ipv4 address with prefix
-| | ... | ${node} | ${interface} | @{ipv4_address2}
+| | ... | ${node} | ${interface} | ${ipv4_address2} | ${ipv4_prefix}
 | | Then IPv4 address from Honeycomb should be
-| | ... | ${node} | ${interface} | @{ipv4_address2}
+| | ... | ${node} | ${interface} | ${ipv4_address2} | ${ipv4_prefix}
 | | And IPv4 address from VAT should be
-| | ... | ${node} | ${interface} | @{ipv4_address2} | ${ipv4_mask}
+| | ... | ${node} | ${interface} | ${ipv4_address2}
+| | ... | ${ipv4_prefix} | ${ipv4_mask}
 
 | TC05: Honeycomb modifies IPv4 neighbor table
 | | [Documentation] | Check if Honeycomb API can add and remove ARP entries.
 | | Given IPv4 neighbor from Honeycomb should be empty
 | | ... | ${node} | ${interface}
 | | When Honeycomb adds interface ipv4 neighbor
-| | ... | ${node} | ${interface} | @{ipv4_neighbor}
+| | ... | ${node} | ${interface} | ${ipv4_neighbor} | ${neighbor_mac}
 | | Then IPv4 neighbor from Honeycomb should be
-| | ... | ${node} | ${interface} | @{ipv4_neighbor}
+| | ... | ${node} | ${interface} | ${ipv4_neighbor} | ${neighbor_mac}
 
 | TC06: Honeycomb modifies interface configuration - IPv6
 | | [Documentation] | Check if Honeycomb API can configure interfaces for ipv6.
 | | And IPv6 address from VAT should be empty
 | | ... | ${node} | ${interface}
 | | When Honeycomb sets interface ipv6 address
-| | ... | ${node} | ${interface} | @{ipv6_address}
+| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix}
 | | Then IPv6 address from Honeycomb should contain
-| | ... | ${node} | ${interface} | @{ipv6_address}
+| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix}
 | | And IPv6 address from VAT should contain
-| | ... | ${node} | ${interface} | @{ipv6_address}
+| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix}
 
 | TC07: Honeycomb modifies IPv6 neighbor table
 | | [Documentation] | Check if Honeycomb API can add and remove ARP entries.
 | | Given IPv6 neighbor from Honeycomb should be empty
 | | ... | ${node} | ${interface}
 | | When Honeycomb adds interface ipv6 neighbor
-| | ... | ${node} | ${interface} | @{ipv6_neighbor}
+| | ... | ${node} | ${interface} | ${ipv6_neighbor} | ${neighbor_mac}
 | | Then IPv6 neighbor from Honeycomb should be
-| | ... | ${node} | ${interface} | @{ipv6_neighbor}
+| | ... | ${node} | ${interface} | ${ipv6_neighbor} | ${neighbor_mac}
 
 | TC08: Honeycomb modifies interface configuration - MTU
 | | [Documentation] | Check if Honeycomb API can configure interface\
 | | ... | MTU value.
 | | When Honeycomb sets interface ethernet configuration
 | | ... | ${node} | ${interface} | ${ethernet}
-| | Then Interface ethernet configuration from Honeycomb should be
+| | Then Interface ethernet Operational Data From Honeycomb Should Be
 | | ... | ${node} | ${interface} | ${ethernet}
-| | And Interface ethernet configuration from VAT should be
+| | And Interface ethernet Operational Data From VAT Should Be
 | | ... | ${node} | ${interface} | ${ethernet['mtu']}
 
 | TC09: Honeycomb modifies interface configuration - vrf
 | | Given Path for 2-node testing is set
 | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']}
 | | When Honeycomb sets interface ipv4 address with prefix
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv4_address} | ${ipv4_prefix}
 | | And Honeycomb adds interface ipv4 address
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address2}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv4_address2} | ${ipv4_prefix}
 | | And Honeycomb sets interface ipv6 address
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv6_address} | ${ipv6_prefix}
 | | And Honeycomb adds interface ipv6 address
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address2}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv6_address2} | ${ipv6_prefix}
 | | Then IPv4 address from Honeycomb should be
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv4_address} | ${ipv4_prefix}
 | | And IPv4 address from VAT should be
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv4_address} | ${ipv4_mask}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv4_address}
+| | ... | ${ipv4_prefix} | ${ipv4_mask}
 | | And IPv6 address from Honeycomb should contain
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv6_address} | ${ipv6_prefix}
 | | And IPv6 address from VAT should contain
-| | ... | ${dut_node} | ${dut_to_tg_if1} | @{ipv6_address}
+| | ... | ${dut_node} | ${dut_to_tg_if1} | ${ipv6_address} | ${ipv6_prefix}
 | | And Honeycomb sets interface state | ${dut_node} | ${dut_to_tg_if1} | up
 | | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${dut_to_tg_if1}
-| | ... | @{ipv4_neighbor}
+| | ... | ${ipv4_neighbor} | ${neighbor_mac}
 | | And Honeycomb adds interface ipv4 neighbor | ${dut_node} | ${dut_to_tg_if1}
-| | ... | @{ipv4_neighbor2}
+| | ... | ${ipv4_neighbor2} | ${neighbor_mac2}
 | | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${dut_to_tg_if1}
-| | ... | @{ipv6_neighbor}
+| | ... | ${ipv6_neighbor} | ${neighbor_mac}
 | | And Honeycomb adds interface ipv6 neighbor | ${dut_node} | ${dut_to_tg_if1}
-| | ... | @{ipv6_neighbor2}
+| | ... | ${ipv6_neighbor2} | ${neighbor_mac2}
 | | And Vpp nodes ra suppress link layer | ${nodes}
 | | Then Ping and Verify IP address | ${nodes['TG']}
-| | ... | ${ipv4_neighbor[0]} | ${ipv4_address[0]}
+| | ... | ${ipv4_neighbor} | ${ipv4_address}
 | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac}
 | | ... | ${tg_to_dut_if1} | ${dut_to_tg_if1_mac}
 | | And Ping and Verify IP address | ${nodes['TG']}
-| | ... | ${ipv4_neighbor2[0]} | ${ipv4_address2[0]}
+| | ... | ${ipv4_neighbor2} | ${ipv4_address2}
 | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac}
 | | ... | ${tg_to_dut_if1} | ${dut_to_tg_if1_mac}
 | | And Ping and Verify IP address | ${nodes['TG']}
-| | ... | ${ipv6_neighbor[0]} | ${ipv6_address[0]}
+| | ... | ${ipv6_neighbor} | ${ipv6_address}
 | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac}
 | | ... | ${tg_to_dut_if1} | ${dut_to_tg_if1_mac}
 | | And Ping and Verify IP address | ${nodes['TG']}
-| | ... | ${ipv6_neighbor2[0]} | ${ipv6_address2[0]}
+| | ... | ${ipv6_neighbor2} | ${ipv6_address2}
 | | ... | ${tg_to_dut_if1} | ${tg_to_dut_if1_mac}
 | | ... | ${tg_to_dut_if1} | ${dut_to_tg_if1_mac}