From a114591eac9f52502048db886da2fb228c62254d Mon Sep 17 00:00:00 2001 From: selias Date: Tue, 9 May 2017 12:38:35 +0200 Subject: CSIT-562 HC Test: Persistence suite rework, part1 - rename keywords that check operational data, to distinguish from keywords that check configuration data - modify existing persistence cases so that they don't affect each other - add feature-specific persistence tests for: Interface Management, L2 bridge - move Interface Management variables to separate file so they can be reused - add new tag HC_PERSIST to execute persistence tests separately - update existing Honeycomb tags to comply with CSIT conventions More feature-specific tests to be added in part2. Change-Id: I8657da4bb9e9a3d5261c04f5f1999b2572f605ef Signed-off-by: selias --- .../honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot | 2 +- .../mgmt-cfg-dhcp-apihc-apivat-func.robot | 10 +- .../func/honeycomb/mgmt-cfg-int-apihcnc-func.robot | 2 +- .../mgmt-cfg-int-subint-apihc-apivat-func.robot | 38 +++---- .../mgmt-cfg-intip4-intip6-apihc-apivat-func.robot | 91 +++++++-------- .../mgmt-cfg-inttap-apihc-apivat-func.robot | 26 ++--- .../mgmt-cfg-intvhost-apihc-apivat-func.robot | 64 +++++------ .../mgmt-cfg-l2bd-apihc-apivat-func.robot | 30 ++--- .../mgmt-cfg-l2fib-apihc-apivat-func.robot | 20 ++-- .../mgmt-cfg-lisp-apihc-apivat-func.robot | 2 +- .../honeycomb/mgmt-cfg-nsh-apihc-apivat-func.robot | 16 +-- .../honeycomb/mgmt-cfg-pbb-apihc-apivat-func.robot | 2 +- .../mgmt-cfg-pluginacl-apihc-apivat-func.robot | 2 +- .../honeycomb/mgmt-cfg-policer-apihc-func.robot | 18 +-- .../honeycomb/mgmt-cfg-proxyarp-apihc-func.robot | 2 +- .../honeycomb/mgmt-cfg-proxynd6-apihc-func.robot | 2 +- .../mgmt-cfg-routing-apihc-apivat-func.robot | 2 +- .../func/honeycomb/mgmt-cfg-slaac-apihc-func.robot | 26 ++--- .../mgmt-cfg-snat44-apihc-apivat-func.robot | 32 +++--- .../mgmt-cfg-spanrx-apihc-apivat-func.robot | 14 +-- .../mgmt-cfg-vxlan-apihc-apivat-func.robot | 48 ++++---- .../mgmt-cfg-vxlangpe-apihc-apivat-func.robot | 54 ++++----- tests/func/honeycomb/mgmt-notif-apihcnc-func.robot | 6 +- .../honeycomb/mgmt-statepersist-apihc-func.robot | 123 ++++++++++++++++----- 24 files changed, 346 insertions(+), 286 deletions(-) (limited to 'tests/func/honeycomb') diff --git a/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot index 1dac59839b..7792fb3fdd 100644 --- a/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-acl-apihc-apivat-func.robot @@ -22,7 +22,7 @@ | Variables | resources/test_data/honeycomb/acl.py | Suite Teardown | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb access control lists test suite.* -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: Honeycomb can create ACL classify table diff --git a/tests/func/honeycomb/mgmt-cfg-dhcp-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-dhcp-apihc-apivat-func.robot index 4405da11e6..ba39c02402 100644 --- a/tests/func/honeycomb/mgmt-cfg-dhcp-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-dhcp-apihc-apivat-func.robot @@ -27,7 +27,7 @@ | Documentation | *Honeycomb DHCP relay test suite.* | Test Setup | Clear Packet Trace on All DUTs | ${nodes} | Suite Teardown | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: Honeycomb can configure DHCP relay entry @@ -40,7 +40,7 @@ | | ... | on the second TG interface and verify required fields. | | [Teardown] | Run Keywords | Show Packet Trace on All DUTs | ${nodes} | | ... | AND | Log DHCP relay configuration from VAT | ${node} | ipv4 -| | Given DHCP relay configuration from Honeycomb should be empty | ${node} +| | Given DHCP relay Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb configures DHCP relay | ${node} | ${relay1} | ipv4 | ${0} | | Then DHCP relay configuration from Honeycomb should contain | | ... | ${node} | ${relay1_oper} @@ -55,13 +55,13 @@ | | Given DHCP relay configuration from Honeycomb should contain | | ... | ${node} | ${relay1_oper} | | When Honeycomb clears DHCP relay configuration | ${node} -| | Then DHCP relay configuration from Honeycomb should be empty | ${node} +| | Then DHCP relay Operational Data From Honeycomb Should Be empty | ${node} | TC03: Honeycomb can configure multiple DHCP relay servers. | | [Documentation] | Configure multiple DHCP relay servers and verify\ | | ... | their configuration using operational data. | | [Teardown] | Honeycomb clears DHCP relay configuration | ${node} -| | Given DHCP relay configuration from Honeycomb should be empty | ${node} +| | Given DHCP relay Operational Data From Honeycomb Should Be empty | ${node} | | And Honeycomb configures DHCP relay | ${node} | ${relay2} | ipv4 | ${0} | | Then DHCP relay configuration from Honeycomb should contain | | ... | ${node} | ${relay2_oper} @@ -77,7 +77,7 @@ | | [Teardown] | Run Keywords | Show Packet Trace on All DUTs | ${nodes} | | ... | AND | Log DHCP relay configuration from VAT | ${node} | ipv6 | | ... | AND | Honeycomb clears DHCP relay configuration | ${node} -| | Given DHCP relay configuration from Honeycomb should be empty | ${node} +| | Given DHCP relay Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb configures DHCP relay | ${node} | ${relay_v6} | ipv6 | ${0} | | Then DHCP relay configuration from Honeycomb should contain | | ... | ${node} | ${relay_v6_oper} diff --git a/tests/func/honeycomb/mgmt-cfg-int-apihcnc-func.robot b/tests/func/honeycomb/mgmt-cfg-int-apihcnc-func.robot index 8f5796a299..4fe9dde40c 100644 --- a/tests/func/honeycomb/mgmt-cfg-int-apihcnc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-int-apihcnc-func.robot @@ -21,7 +21,7 @@ | Variables | resources/test_data/honeycomb/netconf/triggers.py | Documentation | *Netconf test suite. Contains test cases that need to bypass\ | ... | REST API.* -| Force Tags | honeycomb_sanity +| Force Tags | HC_FUNC | HC_REST_ONLY | Suite Teardown | ... | Restart Honeycomb and VPP | ${node} diff --git a/tests/func/honeycomb/mgmt-cfg-int-subint-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-int-subint-apihc-apivat-func.robot index ca1ff9988c..9fb858ad25 100644 --- a/tests/func/honeycomb/mgmt-cfg-int-subint-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-int-subint-apihc-apivat-func.robot @@ -20,7 +20,7 @@ | Variables | resources/test_data/honeycomb/sub_interfaces.py | Suite Teardown | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb sub-interface management test suite.* *** Variables *** @@ -36,15 +36,15 @@ | | [Documentation] | Check if Honeycomb creates a sub-interface. | | ... | | Given Honeycomb sets interface state | ${node} | ${super_if} | down -| | And sub-interface configuration from Honeycomb should be empty +| | And sub-interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${super_if} | ${sub_if_id} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${sub_if_name} | | When Honeycomb creates sub-interface | ${node} | ${super_if} | | ... | ${sub_if_1_match} | ${sub_if_1_tags} | ${sub_if_1_settings} -| | Then Sub-interface configuration from Honeycomb should be +| | Then Sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_if_1_oper} -| | And Sub-interface configuration from VAT should be +| | And Sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | | And sub-interface indices from Honeycomb and VAT should correspond | | ... | ${node} | ${super_if} | ${sub_if_id} @@ -157,15 +157,15 @@ | | [Setup] | Set super and sub interfaces down | | ... | ${node} | ${super_if} | ${sub_if_id} | | ... -| | Given sub-interface configuration from Honeycomb should be +| | Given sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_if_1_oper} -| | And sub-interface configuration from VAT should be +| | And sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | | When Honeycomb fails to remove all sub-interfaces | | ... | ${node} | ${super_if} -| | Then sub-interface configuration from Honeycomb should be +| | Then sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_if_1_oper} -| | And sub-interface configuration from VAT should be +| | And sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | TC07: Honeycomb adds sub-interface to new bridge domain @@ -174,21 +174,21 @@ | | [Setup] | Set super and sub interfaces down | | ... | ${node} | ${super_if} | ${sub_if_id} | | ... -| | Given sub-interface configuration from Honeycomb should be +| | Given sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_if_1_oper} -| | And sub-interface configuration from VAT should be +| | And sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | | When Honeycomb creates first L2 bridge domain | | ... | ${node} | ${bd_name} | ${bd_settings} -| | Then bridge domain configuration from Honeycomb should be +| | Then bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd_name} | ${bd_settings} | | When Honeycomb adds sub-interface to bridge domain | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_bd_settings} -| | Then sub-interface bridge domain configuration from Honeycomb should be +| | Then sub-interface bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if} | ${sub_if_id} | ${sub_bd_settings} -| | And sub-interface bridge domain configuration from VAT should be +| | And sub-interface bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_bd_settings} -| | And sub-interface configuration from VAT should be +| | And sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | TC08: Honeycomb enables tag-rewrite pop 1 @@ -387,15 +387,15 @@ | | [Documentation] | Check if Honeycomb can modify a sub-interface with exact\ | | ... | tag match. | | Given Honeycomb sets interface state | ${node} | ${super_if2} | down -| | And sub-interface configuration from Honeycomb should be empty +| | And sub-interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${super_if2} | ${sub_if_id} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${sub_if2_name} | | When Honeycomb creates sub-interface | ${node} | ${super_if2} | | ... | ${sub_if_2_match} | ${sub_if_2_tags} | ${sub_if_2_settings} -| | Then Sub-interface configuration from Honeycomb should be +| | Then Sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${super_if2} | ${sub_if_id} | ${sub_if_2_oper} -| | And Sub-interface configuration from VAT should be +| | And Sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if2_name} | ${sub_if_2_oper} | | And sub-interface indices from Honeycomb and VAT should correspond | | ... | ${node} | ${super_if2} | ${sub_if_id} diff --git a/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot index 1a8d4008b3..1d2b4ae7de 100644 --- a/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-intip4-intip6-apihc-apivat-func.robot @@ -14,24 +14,6 @@ *** 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.* @@ -66,19 +49,21 @@ | | 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} @@ -91,11 +76,12 @@ | | 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. @@ -104,9 +90,9 @@ | | 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. @@ -117,11 +103,11 @@ | | 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. @@ -130,18 +116,18 @@ | | 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 @@ -169,45 +155,46 @@ | | 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} diff --git a/tests/func/honeycomb/mgmt-cfg-inttap-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-inttap-apihc-apivat-func.robot index 29eb0af5cc..2efdaf2eb5 100644 --- a/tests/func/honeycomb/mgmt-cfg-inttap-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-inttap-apihc-apivat-func.robot @@ -26,7 +26,7 @@ | Resource | resources/libraries/robot/honeycomb/honeycomb.robot | Resource | resources/libraries/robot/honeycomb/interfaces.robot | Resource | resources/libraries/robot/honeycomb/tap.robot -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb TAP management test suite.* @@ -34,39 +34,39 @@ *** Test Cases *** | TC01: Honeycomb configures TAP interface | | [Documentation] | Check if Honeycomb API can configure a TAP interface. -| | Given TAP configuration from Honeycomb should be empty +| | Given TAP Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${tap_interface} -| | And TAP configuration from VAT should be empty +| | And TAP Operational Data From VAT Should Be empty | | ... | ${node} | ${tap_interface} | | When Honeycomb creates TAP interface | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | Then TAP configuration from Honeycomb should be +| | Then TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | And TAP configuration from VAT should be +| | And TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} | TC02: Honeycomb modifies existing TAP interface configuration | | [Documentation] | Check if Honeycomb API can re-configure and existing TAP\ | | ... | interface with new settings. -| | Given TAP configuration from Honeycomb should be +| | Given TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | And TAP configuration from VAT should be +| | And TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} | | When Honeycomb configures TAP interface | | ... | ${node} | ${tap_interface} | ${tap_settings2} -| | Then TAP configuration from Honeycomb should be +| | Then TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings2} -| | And TAP configuration from VAT should be +| | And TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings2} | TC03: Honeycomb removes TAP interface | | [Documentation] | Check if Honeycomb API can remove TAP interface. -| | Given TAP configuration from Honeycomb should be +| | Given TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings2} -| | And TAP configuration from VAT should be +| | And TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings2} | | When Honeycomb removes TAP interface | ${node} | ${tap_interface} -| | Then TAP configuration from Honeycomb should be empty +| | Then TAP Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${tap_interface} -| | And TAP configuration from VAT should be empty +| | And TAP Operational Data From VAT Should Be empty | | ... | ${node} | ${tap_interface} diff --git a/tests/func/honeycomb/mgmt-cfg-intvhost-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-intvhost-apihc-apivat-func.robot index 1e37918753..24e79fa799 100644 --- a/tests/func/honeycomb/mgmt-cfg-intvhost-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-intvhost-apihc-apivat-func.robot @@ -26,7 +26,7 @@ | Resource | resources/libraries/robot/default.robot | Resource | resources/libraries/robot/honeycomb/honeycomb.robot | Resource | resources/libraries/robot/honeycomb/vhost_user.robot -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb vhost-user interface management test suite.* @@ -36,102 +36,102 @@ | | [Documentation] | Check if Honeycomb creates a vhost-user interface, role:\ | | ... | server. | | ... -| | Given vhost-user configuration from Honeycomb should be empty +| | Given vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} | | When Honeycomb creates vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_server} | TC02: Honeycomb modifies vhost-user interface - server | | [Documentation] | Check if Honeycomb can modify properties of existing\ | | ... | vhost-user interface, role: server. | | ... -| | Given vhost-user configuration from Honeycomb should be +| | Given vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_server_edit_1} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server_edit_1} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_server_edit_1} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_server_edit_2} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server_edit_2} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_server_edit_2} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_server} | TC03: Honeycomb deletes vhost-user interface - server | | [Documentation] | Check if Honeycomb can delete an existing vhost-user\ | | ... | interface, role: server. | | ... -| | Given vhost-user configuration from Honeycomb should be +| | Given vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_server} | | When Honeycomb removes vhost-user interface | | ... | ${node} | ${vhost_interface} -| | Then vhost-user configuration from Honeycomb should be empty +| | Then vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} -| | And vhost-user configuration from VAT should be empty +| | And vhost-user Operational Data From VAT Should Be empty | | ... | ${node} | TC04: Honeycomb creates vhost-user interface - client | | [Documentation] | Check if Honeycomb creates a vhost-user interface, role:\ | | ... | client. | | ... -| | Given vhost-user configuration from Honeycomb should be empty +| | Given vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} | | When Honeycomb creates vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_client} | TC05: Honeycomb modifies vhost-user interface - client | | [Documentation] | Check if Honeycomb can modify properties of existing\ | | ... | vhost-user interface, role: client. | | ... -| | Given vhost-user configuration from Honeycomb should be +| | Given vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_client_edit_1} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client_edit_1} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_client_edit_1} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_client_edit_2} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client_edit_2} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_client_edit_2} | | When Honeycomb configures vhost-user interface | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} -| | Then vhost-user configuration from Honeycomb should be +| | Then vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} -| | And vhost-user configuration from VAT should be +| | And vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_client} | TC06: Honeycomb deletes vhost-user interface - client | | [Documentation] | Check if Honeycomb can delete an existing vhost-user\ | | ... | interface, role: client. | | ... -| | Given vhost-user configuration from Honeycomb should be +| | Given vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} | | When Honeycomb removes vhost-user interface | | ... | ${node} | ${vhost_interface} -| | Then vhost-user configuration from Honeycomb should be empty +| | Then vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} -| | And vhost-user configuration from VAT should be empty +| | And vhost-user Operational Data From VAT Should Be empty | | ... | ${node} | TC07: Honeycomb does not set vhost-user configuration on another interface type @@ -140,20 +140,20 @@ | | ... | | When Honeycomb fails setting vhost-user on different interface type | | ... | ${node} | ${interface} | ${vhost_user_server} -| | Then vhost-user configuration from Honeycomb should be empty +| | Then vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} -| | And vhost-user configuration from VAT should be empty +| | And vhost-user Operational Data From VAT Should Be empty | | ... | ${node} | TC08: Honeycomb does not set invalid vhost-user configuration | | [Documentation] | Check if Honeycomb refuses to set invalid parameters to\ | | ... | vhost-user interface. | | ... -| | Given vhost-user configuration from Honeycomb should be empty +| | Given vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} | | When Honeycomb fails setting invalid vhost-user configuration | | ... | ${node} | ${vhost_interface} | ${vhost_user_wrong} -| | Then vhost-user configuration from Honeycomb should be empty +| | Then vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} -| | And vhost-user configuration from VAT should be empty +| | And vhost-user Operational Data From VAT Should Be empty | | ... | ${node} diff --git a/tests/func/honeycomb/mgmt-cfg-l2bd-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-l2bd-apihc-apivat-func.robot index dca6a60303..e8649bd0c7 100644 --- a/tests/func/honeycomb/mgmt-cfg-l2bd-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-l2bd-apihc-apivat-func.robot @@ -32,7 +32,7 @@ | ... | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} | ... | AND | Honeycomb removes all bridge domains | ${node} | @{interfaces} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb bridge domain management test suite.* *** Test Cases *** @@ -40,31 +40,31 @@ | | [Documentation] | Check if Honeycomb can create bridge domains on VPP node. | | When Honeycomb creates first l2 bridge domain | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | Then Bridge domain configuration from Honeycomb should be +| | Then Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} | TC02: Honeycomb manages multiple bridge domains on node | | [Documentation] | Check if Honeycomb can manage multiple bridge domains on\ | | ... | a single node. -| | Given Bridge domain configuration from Honeycomb should be +| | Given Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} | | When Honeycomb creates l2 bridge domain | | ... | ${node} | ${bd2_name} | ${bd_settings} -| | Then Bridge domain configuration from Honeycomb should be +| | Then Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | And Bridge domain configuration from Honeycomb should be +| | And Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd2_name} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${1} | ${bd_settings} | TC03: Honeycomb removes bridge domains | | [Documentation] | Check if Honeycomb can remove bridge domains from a VPP\ | | ... | node. -| | Given Bridge domain configuration from Honeycomb should be +| | Given Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} | | When Honeycomb removes all bridge domains | ${node} | | Then Honeycomb should show no bridge domains | ${node} @@ -77,9 +77,9 @@ | | ... | ${node} | ${bd1_name} | ${bd_settings} | | When Honeycomb adds interfaces to bridge domain | | ... | ${node} | @{interfaces} | ${bd1_name} | ${if_settings} -| | Then Bridge domain configuration from Honeycomb should be +| | Then Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} | | And Honeycomb should show interfaces assigned to bridge domain | | ... | ${node} | @{interfaces} | ${bd1_name} | ${if_settings} @@ -89,9 +89,9 @@ | TC05: Honeycomb cannot remove bridge domain with an interface assigned | | [Documentation] | Check if Honeycomb can remove a bridge domain that has an\ | | ... | interface assigned to it. Expect to fail with code 500. -| | Given Bridge domain configuration from Honeycomb should be +| | Given Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} | | And Honeycomb should show interfaces assigned to bridge domain | | ... | ${node} | @{interfaces} | ${bd1_name} | ${if_settings} @@ -99,9 +99,9 @@ | | ... | ${node} | ${0} | @{interfaces} | ${if_settings} | | When Run keyword and expect error | HoneycombError* Status code: 500. | | ... | Honeycomb removes all bridge domains | ${node} -| | Then Bridge domain configuration from Honeycomb should be +| | Then Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd1_name} | ${bd_settings} -| | And Bridge domain configuration from VAT should be +| | And Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} | | And Honeycomb should show interfaces assigned to bridge domain | | ... | ${node} | @{interfaces} | ${bd1_name} | ${if_settings} diff --git a/tests/func/honeycomb/mgmt-cfg-l2fib-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-l2fib-apihc-apivat-func.robot index ef6a50ca4a..76683a70db 100644 --- a/tests/func/honeycomb/mgmt-cfg-l2fib-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-l2fib-apihc-apivat-func.robot @@ -28,7 +28,7 @@ | ... | AND | ... | Honeycomb removes all bridge domains | ... | ${node} | ${interface} | ${interface2} -| Force tags | honeycomb_sanity | honeycomb_odl +| Force tags | HC_FUNC *** Variables *** # Interface to run tests on. @@ -52,13 +52,13 @@ | | ... | ${node} | ${interface} | up | | When Honeycomb creates first l2 bridge domain | | ... | ${node} | ${bd_name} | ${bd_settings} -| | Then Bridge domain configuration from Honeycomb should be +| | Then Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd_name} | ${bd_settings} -| | Given Bridge domain configuration in interface operational data should be empty +| | Given Bridge domain Operational Interface Assignment should be empty | | ... | ${node} | ${interface} | | When Honeycomb adds interface to bridge domain | | ... | ${node} | ${interface} | ${bd_name} | ${if_bd_settings} -| | Then Bridge domain configuration in interface operational data should be +| | Then Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | Given L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -78,7 +78,7 @@ | | [Teardown] | Honeycomb removes L2 FIB entry | | ... | ${node} | ${bd_name} | ${l2_fib_static_forward_oper['phys-address']} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -98,7 +98,7 @@ | | [Teardown] | Honeycomb removes L2 FIB entry | | ... | ${node} | ${bd_name} | ${l2_fib_filter_oper['phys-address']} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -118,7 +118,7 @@ | | [Teardown] | Honeycomb removes L2 FIB entry | | ... | ${node} | ${bd_name} | ${l2_fib_forward_oper['phys-address']} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -143,7 +143,7 @@ | | [Teardown] | Honeycomb removes all L2 FIB entries | | ... | ${node} | ${bd_name} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -175,7 +175,7 @@ | | [Teardown] | Honeycomb removes all L2 FIB entries | | ... | ${node} | ${bd_name} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} @@ -207,7 +207,7 @@ | | [Teardown] | Honeycomb removes all L2 FIB entries | | ... | ${node} | ${bd_name} | | ... -| | Given Bridge domain configuration in interface operational data should be +| | Given Bridge domain Operational Interface Assignment should be | | ... | ${node} | ${interface} | ${if_bd_settings} | | And L2 FIB Table from Honeycomb should be empty | | ... | ${node} | ${bd_name} diff --git a/tests/func/honeycomb/mgmt-cfg-lisp-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-lisp-apihc-apivat-func.robot index 087720b0c6..174a145a52 100644 --- a/tests/func/honeycomb/mgmt-cfg-lisp-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-lisp-apihc-apivat-func.robot @@ -30,7 +30,7 @@ | Documentation | *Honeycomb Lisp test suite.* | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: Honeycomb enables Lisp feature diff --git a/tests/func/honeycomb/mgmt-cfg-nsh-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-nsh-apihc-apivat-func.robot index 3f4b08795a..068fbcf8a3 100644 --- a/tests/func/honeycomb/mgmt-cfg-nsh-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-nsh-apihc-apivat-func.robot @@ -30,7 +30,7 @@ *** Test Cases *** | TC01: Honeycomb can configure NSH entry | | [Documentation] | Check if Honeycomb can configure an NSH entry. -| | Given NSH configuration from Honeycomb should be empty | ${node} +| | Given NSH Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb adds NSH entry | ${node} | entry1 | ${nsh_entry1} | | Then NSH entry from Honeycomb should be | | ... | ${node} | entry1 | ${nsh_entry1_oper} @@ -40,13 +40,13 @@ | | Given NSH entry from Honeycomb should be | | ... | ${node} | entry1 | ${nsh_entry1_oper} | | When Honeycomb removes NSH entry | ${node} | entry1 -| | Then NSH configuration from Honeycomb should be empty | ${node} +| | Then NSH Operational Data From Honeycomb Should Be empty | ${node} | TC03: Honeycomb can configure new NSH entry | | [Documentation] | Check if Honeycomb can configure an NSH antry after one\ | | ... | has been deleted. | | [Teardown] | Honeycomb removes NSH entry | ${node} | entry2 -| | Given NSH configuration from Honeycomb should be empty | ${node} +| | Given NSH Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb adds NSH entry | ${node} | entry2 | ${nsh_entry2} | | Then NSH entry from Honeycomb should be | | ... | ${node} | entry2 | ${nsh_entry2_oper} @@ -55,7 +55,7 @@ | | [Documentation] | Check if Honeycomb can configure an NSH entry when one\ | | ... | already exists. | | [Teardown] | Honeycomb clears NSH configuration | ${node} -| | Given NSH configuration from Honeycomb should be empty | ${node} +| | Given NSH Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb adds NSH entry | ${node} | entry1 | ${nsh_entry1} | | And Honeycomb adds NSH entry | ${node} | entry2 | ${nsh_entry2} | | Then NSH entry from Honeycomb should be @@ -65,7 +65,7 @@ | TC05: Honeycomb can configure NSH map | | [Documentation] | Check if Honeycomb can configure an NSH map. -| | Given NSH configuration from Honeycomb should be empty | ${node} +| | Given NSH Operational Data From Honeycomb Should Be empty | ${node} | | And Honeycomb creates VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings1} | ${vxlan_gpe_settings1} @@ -77,7 +77,7 @@ | | [Documentation] | Check if Honeycomb can remove an existing NSH map. | | Given NSH entry from Honeycomb should be | | ... | ${node} | entry1 | ${nsh_entry1_oper} -| | And VxLAN GPE configuration from Honeycomb should be +| | And VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings1} | ${vxlan_gpe_settings1} | | And NSH map from Honeycomb should be | ${node} | map1 | ${nsh_map1_oper} @@ -93,7 +93,7 @@ | | Given NSH map from Honeycomb should not exist | ${node} | map1_edit | | And NSH entry from Honeycomb should be | | ... | ${node} | entry1 | ${nsh_entry1_oper} -| | And VxLAN GPE configuration from Honeycomb should be +| | And VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings1} | ${vxlan_gpe_settings1} | | When Honeycomb adds NSH map | ${node} | map1_edit | ${nsh_map1_edit} @@ -114,7 +114,7 @@ | | Given NSH map from Honeycomb should not exist | ${node} | map2 | | And NSH entry from Honeycomb should be | | ... | ${node} | entry1 | ${nsh_entry1_oper} -| | And VxLAN GPE configuration from Honeycomb should be +| | And VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings1} | ${vxlan_gpe_settings1} | | And Honeycomb creates VxLAN GPE interface diff --git a/tests/func/honeycomb/mgmt-cfg-pbb-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-pbb-apihc-apivat-func.robot index e4353e8e45..4d7c8a21ef 100644 --- a/tests/func/honeycomb/mgmt-cfg-pbb-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-pbb-apihc-apivat-func.robot @@ -22,7 +22,7 @@ | Documentation | *Honeycomb provider backbone bridge test suite.* | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** # TODO: add verifications once operational data or VPP dump is available. diff --git a/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot index cecd1c2846..abdd94ceb3 100644 --- a/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-pluginacl-apihc-apivat-func.robot @@ -46,7 +46,7 @@ | Suite Teardown | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb access control lists test suite for ACL plugin.* -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: ACL MAC filtering through plugin-acl node - bridged diff --git a/tests/func/honeycomb/mgmt-cfg-policer-apihc-func.robot b/tests/func/honeycomb/mgmt-cfg-policer-apihc-func.robot index f7d8e9912b..2884f7c628 100644 --- a/tests/func/honeycomb/mgmt-cfg-policer-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-policer-apihc-func.robot @@ -32,40 +32,40 @@ | Suite Teardown | ... | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb Policer management test suite.* *** Test Cases *** | TC01: Honeycomb can configure Policer | | [Documentation] | Checks if Honeycomb can configure Policer. -| | Given Policer configuration from Honeycomb should be empty | ${node} +| | Given Policer Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb configures Policer | ${node} | ${policer_data} -| | Then Policer configuration from Honeycomb should be | ${node} +| | Then Policer Operational Data From Honeycomb Should Be | ${node} | | ... | ${policer_data_oper} | TC02: Honeycomb can disable Policer | | [Documentation] | Checks if Honeycomb can disable Policer. -| | Given Policer configuration from Honeycomb should be | ${node} +| | Given Policer Operational Data From Honeycomb Should Be | ${node} | | ... | ${policer_data_oper} | | When Honeycomb removes Policer configuration | ${node} -| | Then Policer configuration from Honeycomb should be empty | ${node} +| | Then Policer Operational Data From Honeycomb Should Be empty | ${node} | TC03: Honeycomb can configure Policer with increased values of CIR (900kbps) | | [Documentation] | Checks if Honeycomb can configure Policer\ | | ... | with increased values of CIR. | | [Teardown] | Policer test teardown | ${node} -| | Given Policer configuration from Honeycomb should be empty | ${node} +| | Given Policer Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb configures Policer | ${node} | ${policer_data_2} -| | Then Policer configuration from Honeycomb should be | ${node} +| | Then Policer Operational Data From Honeycomb Should Be | ${node} | | ... | ${policer_data_oper_2} | TC04: Honeycomb can configure Packets-Per-Second Based Policer | | [Documentation] | Checks if Honeycomb can configure Policer\ | | ... | based on rate-type measured in pps. | | [Teardown] | Policer test teardown | ${node} -| | Given Policer configuration from Honeycomb should be empty | ${node} +| | Given Policer Operational Data From Honeycomb Should Be empty | ${node} | | When Honeycomb configures Policer | ${node} | ${policer_data_3} -| | Then Policer configuration from Honeycomb should be | ${node} +| | Then Policer Operational Data From Honeycomb Should Be | ${node} | | ... | ${policer_data_oper_3} | TC05: Configure Policer on Interface diff --git a/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot b/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot index 9263ebbc2a..c6ad942170 100644 --- a/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-proxyarp-apihc-func.robot @@ -33,7 +33,7 @@ | Suite Teardown | ... | Run Keyword If Any Tests Failed | ... | Restart Honeycomb And VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb proxyARP management test suite.* *** Test Cases *** diff --git a/tests/func/honeycomb/mgmt-cfg-proxynd6-apihc-func.robot b/tests/func/honeycomb/mgmt-cfg-proxynd6-apihc-func.robot index 423c7885ec..c934b06a84 100644 --- a/tests/func/honeycomb/mgmt-cfg-proxynd6-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-proxynd6-apihc-func.robot @@ -36,7 +36,7 @@ | Library | resources.libraries.python.Trace | Test Setup | Clear Packet Trace on All DUTs | ${nodes} | Suite Teardown | Restart Honeycomb And VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb IPv6 neighbor discovery proxy test suite.* *** Test Cases *** diff --git a/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot index 93c842010b..a722adaa7b 100644 --- a/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-routing-apihc-apivat-func.robot @@ -26,7 +26,7 @@ | Test Teardown | Honeycomb routing test teardown | ... | ${node} | ${table} | Documentation | *Honeycomb routing test suite.* -| Force Tags | Honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: Single hop IPv4 route diff --git a/tests/func/honeycomb/mgmt-cfg-slaac-apihc-func.robot b/tests/func/honeycomb/mgmt-cfg-slaac-apihc-func.robot index 8d85eb2a45..3325a0f9bd 100644 --- a/tests/func/honeycomb/mgmt-cfg-slaac-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-slaac-apihc-func.robot @@ -25,79 +25,79 @@ | Suite Teardown | ... | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Documentation | *Honeycomb SLAAC management test suite.* | Variables | resources/test_data/honeycomb/slaac_variables.py *** Test Cases *** | TC01: Honeycomb can configure SLAAC | | [Documentation] | Checks if Honeycomb can congigure SLAAC. -| | Given SLAAC configuration from Honeycomb should be empty | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | | And InterfaceAPI.Set Interface State | ${node} | ${interface} | up | | And Honeycomb sets interface ipv6 address | ${node} | ${interface} | | ... | ${address} | ${prefix} | | When Honeycomb configures SLAAC | ${node} | ${interface} | ${slaac_data} -| | Then SLAAC configuration from Honeycomb should be | ${node} +| | Then SLAAC Operational Data From Honeycomb Should Be | ${node} | | ... | ${interface} | ${slaac_data} | TC02: Honeycomb can disable SLAAC | | [Documentation] | Checks if Honeycomb can disable SLAAC. -| | Given SLAAC configuration from Honeycomb should be | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be | ${node} | | ... | ${interface} | ${slaac_data} | | When Honeycomb removes SLAAC configuration | ${node} | ${interface} -| | Then SLAAC configuration from Honeycomb should be empty | ${node} +| | Then SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | TC03: Honeycomb can configure SLAAC with suppress link layer disabled | | [Documentation] | Checks if Honeycomb can congigure SLAAC. | | [Teardown] | SLAAC test teardown | ${node} | ${interface} -| | Given SLAAC configuration from Honeycomb should be empty | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | | And InterfaceAPI.Set Interface State | ${node} | ${interface} | up | | And Honeycomb sets interface ipv6 address | ${node} | ${interface} | | ... | ${address} | ${prefix} | | When Honeycomb configures SLAAC | ${node} | ${interface} | ${slaac_data} -| | Then SLAAC configuration from Honeycomb should be | ${node} +| | Then SLAAC Operational Data From Honeycomb Should Be | ${node} | | ... | ${interface} | ${slaac_data} | TC04: Honeycomb can configure SLAAC with sending RA packets disabled | | [Documentation] | Checks if Honeycomb can configure SLAAC\ | | ... | with given settings. | | [Teardown] | SLAAC test teardown | ${node} | ${interface} -| | Given SLAAC configuration from Honeycomb should be empty | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | | And InterfaceAPI.Set Interface State | ${node} | ${interface} | up | | And Honeycomb sets interface ipv6 address | ${node} | ${interface} | | ... | ${address} | ${prefix} | | When Honeycomb configures SLAAC | ${node} | ${interface} | ${slaac_data_01} -| | Then SLAAC configuration from Honeycomb should be | ${node} | ${interface} +| | Then SLAAC Operational Data From Honeycomb Should Be | ${node} | ${interface} | | ... | ${slaac_data_01} | TC05: Honeycomb can configure SLAAC with min interval values | | [Documentation] | Checks if Honeycomb can configure SLAAC\ | | ... | with given settings. | | [Teardown] | SLAAC test teardown | ${node} | ${interface} -| | Given SLAAC configuration from Honeycomb should be empty | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | | And InterfaceAPI.Set Interface State | ${node} | ${interface} | up | | And Honeycomb sets interface ipv6 address | ${node} | ${interface} | | ... | ${address} | ${prefix} | | When Honeycomb configures SLAAC | ${node} | ${interface} | ${slaac_data_02} -| | Then SLAAC configuration from Honeycomb should be | ${node} | ${interface} +| | Then SLAAC Operational Data From Honeycomb Should Be | ${node} | ${interface} | | ... | ${slaac_data_02} | TC06: Honeycomb can configure SLAAC with max interval values | | [Documentation] | Checks if Honeycomb can configure SLAAC\ | | ... | with given settings. | | [Teardown] | SLAAC test teardown | ${node} | ${interface} -| | Given SLAAC configuration from Honeycomb should be empty | ${node} +| | Given SLAAC Operational Data From Honeycomb Should Be empty | ${node} | | ... | ${interface} | | And InterfaceAPI.Set Interface State | ${node} | ${interface} | up | | And Honeycomb sets interface ipv6 address | ${node} | ${interface} | | ... | ${address} | ${prefix} | | When Honeycomb configures SLAAC | ${node} | ${interface} | ${slaac_data_03} -| | Then SLAAC configuration from Honeycomb should be | ${node} | ${interface} +| | Then SLAAC Operational Data From Honeycomb Should Be | ${node} | ${interface} | | ... | ${slaac_data_03} | TC07: DUT retransmits RA on IPv6 enabled interface after a set interval diff --git a/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot index c4e929574f..d765f1e4e9 100644 --- a/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-snat44-apihc-apivat-func.robot @@ -22,12 +22,12 @@ | Documentation | *Honeycomb NAT test suite.* | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC *** Test Cases *** | TC01: Honeycomb configures NAT entry | | [Documentation] | Honeycomb configures a static NAT entry. -| | Given NAT configuration from Honeycomb should be empty +| | Given NAT Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${nat_empty} | | When Honeycomb Configures NAT Entry | ${node} | ${entry1} | | Then NAT Entries From Honeycomb Should Be | ${node} | ${entry1} @@ -36,13 +36,13 @@ | | [Documentation] | Honeycomb removes a configured static NAT entry. | | Given NAT Entries From Honeycomb Should Be | ${node} | ${entry1} | | When Honeycomb Configures NAT Entry | ${node} | ${NONE} -| | Then NAT configuration from Honeycomb should be empty +| | Then NAT Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${nat_empty} | TC03: Honeycomb configures multiple NAT entries | | [Documentation] | Honeycomb configures two static NAT entries. | | [Teardown] | Honeycomb Configures NAT Entry | ${node} | ${NONE} -| | Given NAT configuration from Honeycomb should be empty +| | Given NAT Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${nat_empty} | | When Honeycomb Configures NAT Entry | ${node} | ${entry1} | ${0} | ${1} | | And Honeycomb Configures NAT Entry | ${node} | ${entry2} | ${0} | ${2} @@ -52,28 +52,28 @@ | TC04: Honeycomb enables NAT on interface - inbound | | [Documentation] | Honeycomb configures NAT on an interface\ | | ... | in inbound direction. -| | Given NAT Interface Configuration From Honeycomb Should Be Empty +| | Given NAT Interface Operational Data From Honeycomb Should Be Empty | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should Be Empty +| | And NAT Interface Operational Data From Honeycomb Should Be Empty | | ... | ${node} | ${interface} | outbound | | When Honeycomb Configures NAT On Interface | | ... | ${node} | ${interface} | inbound -| | Then NAT Interface Configuration From Honeycomb Should Be +| | Then NAT Interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should be empty +| | And NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | outbound | TC05: Honeycomb removes NAT interface configuration | | [Documentation] | Honeycomb removes NAT configuration from an interface. -| | Given NAT Interface Configuration From Honeycomb Should Be +| | Given NAT Interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should Be empty +| | And NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | outbound | | When Honeycomb removes NAT interface configuration | | ... | ${node} | ${interface} | inbound -| | Then NAT Interface Configuration From Honeycomb Should Be empty +| | Then NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should Be empty +| | And NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | outbound | TC06: Honeycomb enables NAT on interface - outbound @@ -81,13 +81,13 @@ | | ... | in outbound direction. | | [Teardown] | Honeycomb removes NAT interface configuration | | ... | ${node} | ${interface} | outbound -| | Given NAT Interface Configuration From Honeycomb Should Be empty +| | Given NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should Be empty +| | And NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | outbound | | When Honeycomb Configures NAT on Interface | | ... | ${node} | ${interface} | outbound -| | Then NAT Interface Configuration From Honeycomb Should Be empty +| | Then NAT Interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} | inbound -| | And NAT Interface Configuration From Honeycomb Should Be +| | And NAT Interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface} | outbound diff --git a/tests/func/honeycomb/mgmt-cfg-spanrx-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-spanrx-apihc-apivat-func.robot index cf1f4b880f..74c56eb564 100644 --- a/tests/func/honeycomb/mgmt-cfg-spanrx-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-spanrx-apihc-apivat-func.robot @@ -21,7 +21,7 @@ | Variables | resources/test_data/honeycomb/spanrx-apihc-apivat.py | ... | ${node} | ${node['interfaces']['port1']['name']} | ... | ${node['interfaces']['port3']['name']} | local0 -| Force Tags | honeycomb_sanity +| Force Tags | HC_FUNC | Suite Setup | Add Interface local0 To Topology | ${node} | Suite Teardown | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb port mirroring test suite.* @@ -33,7 +33,7 @@ | | ... | | When Honeycomb Configures SPAN on interface | | ... | ${node} | ${interface1} | ${settings_1} -| | Then Interface SPAN configuration from Honeycomb should be +| | Then Interface SPAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface1} | ${settings_1} | TC02: Honeycomb can configure SPAN on an interface transmit @@ -42,7 +42,7 @@ | | ... | | When Honeycomb Configures SPAN on interface | | ... | ${node} | ${interface1} | ${settings_2} -| | Then Interface SPAN configuration from Honeycomb should be +| | Then Interface SPAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface1} | ${settings_2} | TC03: Honeycomb can configure SPAN on an interface both @@ -51,7 +51,7 @@ | | ... | | When Honeycomb Configures SPAN on interface | | ... | ${node} | ${interface1} | ${settings_3} -| | Then Interface SPAN configuration from Honeycomb should be +| | Then Interface SPAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface1} | ${settings_3} | TC04: Honeycomb can configure SPAN on two interfaces @@ -60,18 +60,18 @@ | | ... | | When Honeycomb Configures SPAN on interface | | ... | ${node} | ${interface1} | ${settings_2} | ${settings_4} -| | Then Interface SPAN configuration from Honeycomb should be +| | Then Interface SPAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface1} | ${settings_2} | ${settings_4} | TC05: Honeycomb can disable SPAN on interface | | [Documentation] | Honeycomb removes existing SPAN configuration | | ... | on interface. | | ... -| | Given Interface SPAN configuration from Honeycomb should be +| | Given Interface SPAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface1} | ${settings_2} | ${settings_4} | | When Honeycomb removes interface SPAN configuration | | ... | ${node} | ${interface1} -| | Then Interface SPAN configuration from Honeycomb should be empty +| | Then Interface SPAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface1} | TC06: DUT mirrors IPv4 packets from one interface to another diff --git a/tests/func/honeycomb/mgmt-cfg-vxlan-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-vxlan-apihc-apivat-func.robot index f4cec2712d..339fdb8972 100644 --- a/tests/func/honeycomb/mgmt-cfg-vxlan-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-vxlan-apihc-apivat-func.robot @@ -32,7 +32,7 @@ | Resource | resources/libraries/robot/honeycomb/vxlan.robot # import additional VxLAN settings from resource file | Variables | resources/test_data/honeycomb/vxlan.py -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} | Documentation | *Honeycomb VxLAN management test suite.* @@ -40,14 +40,14 @@ *** Test Cases *** | TC01: Honeycomb configures VxLAN tunnel | | [Documentation] | Check if Honeycomb API can configure VxLAN settings. -| | Given VxLAN configuration from Honeycomb should be empty +| | Given VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | | When Honeycomb sets interface VxLAN configuration | | ... | ${node} | ${vx_interface} | ${vxlan_settings} -| | Then VxLAN configuration from Honeycomb should be +| | Then VxLAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${vx_interface} | ${vxlan_settings} -| | And VxLAN configuration from VAT should be +| | And VxLAN Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_settings} | | ${vxlan_index}= | Get Interface index from oper data | | ... | ${node} | ${vx_interface} @@ -55,60 +55,60 @@ | TC02: Honeycomb disables VxLAN tunnel | | [Documentation] | Check if Honeycomb API can reset VxLAN configuration. -| | Given VxLAN configuration from Honeycomb should be +| | Given VxLAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${vx_interface} | ${vxlan_settings} | | And Honeycomb should not show disabled interface in oper data | | ... | ${node} | ${vxlan_index} -| | And VxLAN configuration from VAT should be +| | And VxLAN Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_settings} | | When Honeycomb removes VxLAN tunnel settings | ${node} | ${vx_interface} -| | Then VxLAN configuration from Honeycomb should be empty +| | Then VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} | | And Honeycomb should show disabled interface in oper data | | ... | ${node} | ${vxlan_index} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | TC03: Honeycomb can configure VXLAN tunnel after one has been disabled | | [Documentation] | Check if Honeycomb API can configure VxLAN settings again\ | | ... | after previous settings have been removed. | | [Teardown] | Honeycomb removes VxLAN tunnel settings | | ... | ${node} | ${vx_interface} -| | Given VxLAN configuration from Honeycomb should be empty +| | Given VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} | | And Honeycomb should show disabled interface in oper data | | ... | ${node} | ${vxlan_index} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | | When Honeycomb sets interface VxLAN configuration | | ... | ${node} | ${vx_interface} | ${vxlan_settings2} -| | Then VxLAN configuration from Honeycomb should be +| | Then VxLAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${vx_interface} | ${vxlan_settings2} | | And Honeycomb should not show disabled interface in oper data | | ... | ${node} | ${vxlan_index} -| | And VxLAN configuration from VAT should be +| | And VxLAN Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_settings2} | TC04: Honeycomb does not set VxLAN configuration on another interface type | | [Documentation] | Check if Honeycomb API prevents setting VxLAN\ | | ... | on incorrect interface. -| | Given VxLAN configuration from Honeycomb should be empty +| | Given VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | | When Honeycomb fails setting VxLan on different interface type | | ... | ${node} | ${interface} | ${vxlan_settings2} -| | Then VxLAN configuration from Honeycomb should be empty +| | Then VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${interface} -| | And VxLAN configuration from VAT should be empty +| | And VxLAN Operational Data From VAT Should Be empty | | ... | ${node} | TC05: Honeycomb does not set invalid VxLAN configuration | | [Documentation] | Check if Honeycomb API prevents setting incorrect VxLAN\ | | ... | settings. -| | Given VxLAN configuration from Honeycomb should be empty +| | Given VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | | When Honeycomb fails setting invalid VxLAN configuration | | ... | ${node} | ${vx_interface} | ${vxlan_invalid} -| | Then VxLAN configuration from Honeycomb should be empty +| | Then VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} | TC06: Honeycomb configures VxLAN tunnel with ipv6 @@ -116,12 +116,12 @@ | | ... | ipv6 settings. | | [Teardown] | Honeycomb removes VxLAN tunnel settings | | ... | ${node} | ${vx_interface} -| | Given VxLAN configuration from Honeycomb should be empty +| | Given VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} -| | And VxLAN configuration from VAT should be empty | ${node} +| | And VxLAN Operational Data From VAT Should Be empty | ${node} | | When Honeycomb sets interface VxLAN configuration | | ... | ${node} | ${vx_interface} | ${vxlan_settings_ipv6} -| | Then VxLAN configuration from Honeycomb should be +| | Then VxLAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${vx_interface} | ${vxlan_settings_ipv6_long} -| | And VxLAN configuration from VAT should be +| | And VxLAN Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_settings_ipv6} diff --git a/tests/func/honeycomb/mgmt-cfg-vxlangpe-apihc-apivat-func.robot b/tests/func/honeycomb/mgmt-cfg-vxlangpe-apihc-apivat-func.robot index 7902396e40..253cd6ab05 100644 --- a/tests/func/honeycomb/mgmt-cfg-vxlangpe-apihc-apivat-func.robot +++ b/tests/func/honeycomb/mgmt-cfg-vxlangpe-apihc-apivat-func.robot @@ -39,7 +39,7 @@ # Import additional VxLAN GPE settings from resource file | Variables | resources/test_data/honeycomb/vxlan_gpe.py | Documentation | *Honeycomb VxLAN-GPE management test suite.* -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Suite Setup | ... | Restart Honeycomb and VPP | ${node} @@ -47,17 +47,17 @@ | TC01: Honeycomb creates VxLAN GPE tunnel | | [Documentation] | Check if Honeycomb API can configure a VxLAN GPE tunnel. | | ... -| | Given interface configuration from Honeycomb should be empty +| | Given interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if1} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if1} | | When Honeycomb creates VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings} | ${vxlan_gpe_settings} -| | Then VxLAN GPE configuration from Honeycomb should be +| | Then VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings} | ${vxlan_gpe_settings} -| | And VxLAN GPE configuration from VAT should be +| | And VxLAN GPE Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_gpe_if1} | ${vxlan_gpe_settings} | | And VxLAN GPE Interface indices from Honeycomb and VAT should correspond | | ... | ${node} | ${vxlan_gpe_if1} @@ -65,80 +65,80 @@ | TC02: Honeycomb removes VxLAN GPE tunnel | | [Documentation] | Check if Honeycomb API can remove VxLAN GPE tunnel. | | ... -| | Given VxLAN GPE configuration from Honeycomb should be +| | Given VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if1} | | ... | ${vxlan_gpe_base_settings} | ${vxlan_gpe_settings} -| | VxLAN GPE configuration from VAT should be +| | VxLAN GPE Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_gpe_if1} | ${vxlan_gpe_settings} | | When Honeycomb removes VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if1} -| | Then VxLAN GPE configuration from Honeycomb should be empty +| | Then VxLAN GPE Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if1} -| | And VxLAN GPE configuration from VAT should be empty +| | And VxLAN GPE Operational Data From VAT Should Be empty | | ... | ${node} | TC03: Honeycomb sets wrong interface type while creating VxLAN GPE tunnel | | [Documentation] | Check if Honeycomb refuses to create a VxLAN GPE tunnel\ | | ... | with a wrong interface type set. | | ... -| | Given interface configuration from Honeycomb should be empty +| | Given interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if2} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if2} | | When Honeycomb fails to create VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if2} | | ... | ${vxlan_gpe_wrong_type_base_settings} | ${vxlan_gpe_settings} -| | Then interface configuration from Honeycomb should be empty +| | Then interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if2} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if2} | TC04: Honeycomb sets wrong protocol while creating VxLAN GPE tunnel | | [Documentation] | Check if Honeycomb refuses to create a VxLAN GPE tunnel\ | | ... | with a wrong next-protocol set. | | ... -| | Given interface configuration from Honeycomb should be empty +| | Given interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if3} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if3} | | When Honeycomb fails to create VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if3} | | ... | ${vxlan_gpe_wrong_protocol_base_settings} | | ... | ${vxlan_gpe_wrong_protocol_settings} -| | Then interface configuration from Honeycomb should be empty +| | Then interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if3} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if3} | TC05: Honeycomb sets VxLAN GPE tunnel on existing interface with wrong type | | [Documentation] | Check if Honeycomb refuses to create a VxLAN GPE tunnel\ | | ... | on existing interface with wrong type. | | ... -| | Given VxLAN GPE configuration from VAT should be empty +| | Given VxLAN GPE Operational Data From VAT Should Be empty | | ... | ${node} | | When Honeycomb fails to create VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_existing_if} | | ... | ${vxlan_gpe_base_wrong_interface_settings} | | ... | ${vxlan_gpe_wrong_interface_settings} -| | Then VxLAN GPE configuration from VAT should be empty +| | Then VxLAN GPE Operational Data From VAT Should Be empty | | ... | ${node} | TC06: Honeycomb creates VxLAN GPE tunnel with ipv6 | | [Documentation] | Check if Honeycomb API can configure a VxLAN GPE tunnel\ | | ... | with IPv6 addresses. | | ... -| | Given VxLAN GPE configuration from VAT should be empty +| | Given VxLAN GPE Operational Data From VAT Should Be empty | | ... | ${node} -| | And VxLAN GPE configuration from Honeycomb should be empty +| | And VxLAN GPE Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if5} | | When Honeycomb creates VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if5} | | ... | ${vxlan_gpe_base_ipv6_settings} | ${vxlan_gpe_ipv6_settings} -| | Then VxLAN GPE configuration from Honeycomb should be +| | Then VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if5} | | ... | ${vxlan_gpe_base_ipv6_settings} | ${vxlan_gpe_ipv6_settings} | | And Run Keyword And Continue On Failure -| | ... | VxLAN GPE configuration from VAT should be +| | ... | VxLAN GPE Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_gpe_if5} | ${vxlan_gpe_ipv6_settings} | | And VxLAN GPE Interface indices from Honeycomb and VAT should correspond | | ... | ${node} | ${vxlan_gpe_if5} @@ -147,17 +147,17 @@ | | [Documentation] | Check if Honeycomb API can configure another VxLAN\ | | ... | GPE tunnel with IPv6 addresses. | | ... -| | Given interface configuration from Honeycomb should be empty +| | Given interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vxlan_gpe_if6} -| | And interface configuration from VAT should be empty +| | And interface Operational Data From VAT Should Be empty | | ... | ${node} | ${vxlan_gpe_if6} | | When Honeycomb creates VxLAN GPE interface | | ... | ${node} | ${vxlan_gpe_if6} | | ... | ${vxlan_gpe_base_ipv6_settings2} | ${vxlan_gpe_ipv6_settings2} -| | Then VxLAN GPE configuration from Honeycomb should be +| | Then VxLAN GPE Operational Data From Honeycomb Should Be | | ... | ${node} | ${vxlan_gpe_if6} | | ... | ${vxlan_gpe_base_ipv6_settings2} | ${vxlan_gpe_ipv6_settings2} -| | And VxLAN GPE configuration from VAT should be +| | And VxLAN GPE Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_gpe_if6} | ${vxlan_gpe_ipv6_settings2} | | And VxLAN GPE Interface indices from Honeycomb and VAT should correspond | | ... | ${node} | ${vxlan_gpe_if6} diff --git a/tests/func/honeycomb/mgmt-notif-apihcnc-func.robot b/tests/func/honeycomb/mgmt-notif-apihcnc-func.robot index a1bd91625f..3386e1fe60 100644 --- a/tests/func/honeycomb/mgmt-notif-apihcnc-func.robot +++ b/tests/func/honeycomb/mgmt-notif-apihcnc-func.robot @@ -30,7 +30,7 @@ | ... | Honeycomb creates TAP interface | ... | ${node} | ${tap_interface} | ${tap_settings} | Documentation | *Honeycomb notifications test suite.* -| Force Tags | honeycomb_sanity | honeycomb_odl +| Force Tags | HC_FUNC | Suite Teardown | Run Keyword If Any Tests Failed | ... | Restart Honeycomb and VPP | ${node} @@ -50,9 +50,9 @@ | TC02: Honeycomb sends notification on interface deletion | | [Documentation] | Check if Honeycomb sends an interface-deleted notification | | ... | when an interface is deleted. -| | Given TAP configuration from Honeycomb should be +| | Given TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | And TAP configuration from VAT should be +| | And TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} | | And Notification listener is established | ${node} | | When Honeycomb removes TAP interface | ${node} | ${tap_interface} diff --git a/tests/func/honeycomb/mgmt-statepersist-apihc-func.robot b/tests/func/honeycomb/mgmt-statepersist-apihc-func.robot index 28746e66fb..5dfa4b5aed 100644 --- a/tests/func/honeycomb/mgmt-statepersist-apihc-func.robot +++ b/tests/func/honeycomb/mgmt-statepersist-apihc-func.robot @@ -18,52 +18,125 @@ *** Settings *** | Resource | resources/libraries/robot/default.robot | Resource | resources/libraries/robot/honeycomb/persistence.robot +| Resource | resources/libraries/robot/honeycomb/interfaces.robot +| Resource | resources/libraries/robot/honeycomb/bridge_domain.robot +| Resource | resources/libraries/robot/honeycomb/l2_fib.robot | Suite Setup | Run Keywords | ... | Configure Persistence | ${node} | enable | AND | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} | Suite Teardown | Configure Persistence | ${node} | disable -| Force Tags | honeycomb_sanity +| Force Tags | HC_PERSIST | HC_REST_ONLY | Documentation | *Honeycomb configuration persistence test suite.* *** Test Cases *** +# multi-feature cases +# =================== | TC01: Honeycomb persists configuration through restart of both Honeycomb and VPP | | [Documentation] | Checks if Honeycomb maintains configuration after both\ | | ... | Honeycomb and VPP are restarted. -# Vxlan tunnel name is sometimes not properly restored (HC2VPP-47) -| | [Tags] | EXPECTED_FAILING -| | Given Honeycomb configures every setting | ${node} | ${interface} -| | And Honeycomb and VPP should verify every setting | ${node} | ${interface} +| | [Tags] | HC_FUNC +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Multi-Feature Persistence test configuration | ${node} | ${interface} +| | And Multi-Feature persistence Test Verification | ${node} | ${interface} | | And Log persisted configuration on node | ${node} | | When Honeycomb and VPP are restarted | ${node} -| | Then Honeycomb and VPP should verify every setting | ${node} | ${interface} -| | And Honeycomb should show no rogue interfaces | ${node} +| | Then Multi-Feature persistence Test Verification | ${node} | ${interface} + +| TC02: Honeycomb reverts to defaults if persistence files are invalid +| | [Documentation] | Checks if Honeycomb reverts to default configuration when\ +| | ... | persistence files are damaged or invalid. +| | [Tags] | HC_FUNC +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Multi-Feature Persistence test configuration | ${node} | ${interface} +| | And Multi-Feature persistence Test Verification | ${node} | ${interface} +| | When Persistence file is damaged during restart | ${node} +| | Then Honeycomb and VPP should have default configuration | ${node} -| TC02: Honeycomb persists configuration through restart of Honeycomb +| TC03: Honeycomb persists configuration through restart of Honeycomb | | [Documentation] | Checks if Honeycomb maintains configuration after it\ | | ... | is restarted. -# Vxlan tunnel name is sometimes not properly restored (HC2VPP-47) -| | [Tags] | EXPECTED_FAILING -| | Given Honeycomb and VPP should verify every setting | ${node} | ${interface} +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Multi-Feature Persistence test configuration | ${node} | ${interface} +| | And Multi-Feature persistence Test Verification | ${node} | ${interface} | | And Log persisted configuration on node | ${node} | | When Honeycomb is restarted | ${node} -| | Then Honeycomb and VPP should verify every setting | ${node} | ${interface} -| | And Honeycomb should show no rogue interfaces | ${node} +| | Then Multi-Feature persistence Test Verification | ${node} | ${interface} -| TC03: Honeycomb persists configuration through restart of VPP +| TC04: Honeycomb persists configuration through restart of VPP | | [Documentation] | Checks if Honeycomb updates VPP settings after VPP is\ | | ... | restarted. -# Vxlan tunnel name is sometimes not properly restored (HC2VPP-47) -| | [Tags] | EXPECTED_FAILING -| | Given Honeycomb and VPP should verify every setting | ${node} | ${interface} +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Multi-Feature Persistence test configuration | ${node} | ${interface} +| | And Multi-Feature persistence Test Verification | ${node} | ${interface} | | And Log persisted configuration on node | ${node} | | When VPP is restarted | ${node} -| | Then Honeycomb and VPP should verify every setting | ${node} | ${interface} -| | And Honeycomb should show no rogue interfaces | ${node} +| | Then Multi-Feature persistence Test Verification | ${node} | ${interface} -| TC04: Honeycomb reverts to defaults if persistence files are invalid -| | [Documentation] | Checks if Honeycomb reverts to default configuration when\ -| | ... | persistence files are damaged or invalid. -| | [Teardown] | Run keyword if test failed +# single-feature cases +# ==================== + +| TC05: Persist configuration of IP addresses and neighbors - HC and VPP restart +| | [Documentation] | Verify persistence of interface state, IPv4 address +| | ... | and neighbor entries through restart of both Honeycomb and VPP. +| | [Teardown] | | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} -| | When Persistence file is damaged during restart | ${node} -| | Then Honeycomb and VPP should have default configuration | ${node} +| | Given Interface Persistence Setup | ${node} +| | And Interface Persistence Check | ${node} +| | When Honeycomb and VPP are restarted | ${node} +| | Then Interface Persistence Check | ${node} + +| TC06: Persist configuration of IP addresses and neighbors - HC restart +| | [Documentation] | Verify persistence of interface state, IPv4 address +| | ... | and neighbor entries through restart of Honeycomb. +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Interface Persistence Setup | ${node} +| | And Interface Persistence Check | ${node} +| | When Honeycomb is restarted | ${node} +| | Then Interface Persistence Check | ${node} + +| TC07: Persist configuration of IP addresses and neighbors - VPP restart +| | [Documentation] | Verify persistence of interface state, IPv4 address +| | ... | and neighbor entries through restart of VPP. +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Interface Persistence Setup | ${node} +| | And Interface Persistence Check | ${node} +| | When VPP is restarted | ${node} +| | Then Interface Persistence Check | ${node} + +| TC08: Honeycomb persists configuration of bridge domains - HC and VPP restart +| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry +| | ... | and Bridge domain Operational Interface Assignment through restart +| | ... | of both Honeycomb and VPP. +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Bridge Domain Persistence Setup | ${node} +| | When Honeycomb and VPP are restarted | ${node} +| | Then Bridge Domain Persistence Check | ${node} + +| TC09: Honeycomb persists configuration of bridge domains - HC restart +| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry +| | ... | and Bridge domain Operational Interface Assignment through restart +| | ... | of Honeycomb. +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Bridge Domain Persistence Setup | ${node} +| | When Honeycomb is restarted | ${node} +| | Then Bridge Domain Persistence Check | ${node} + +| TC10: Honeycomb persists configuration of bridge domains - VPP restart +| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry +| | ... | and Bridge domain Operational Interface Assignment through restart +| | ... | of VPP. +| | [Teardown] +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| | Given Bridge Domain Persistence Setup | ${node} +| | When VPP is restarted | ${node} +| | Then Bridge Domain Persistence Check | ${node} + +#TODO: All other features -- cgit 1.2.3-korg