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 --- .../libraries/robot/honeycomb/bridge_domain.robot | 16 +- resources/libraries/robot/honeycomb/dhcp.robot | 4 +- .../libraries/robot/honeycomb/honeycomb.robot | 3 +- .../libraries/robot/honeycomb/interfaces.robot | 16 +- resources/libraries/robot/honeycomb/nat.robot | 16 +- resources/libraries/robot/honeycomb/nsh.robot | 4 +- .../libraries/robot/honeycomb/persistence.robot | 164 +++++++++++++++------ resources/libraries/robot/honeycomb/policer.robot | 8 +- .../libraries/robot/honeycomb/port_mirroring.robot | 12 +- resources/libraries/robot/honeycomb/slaac.robot | 8 +- .../libraries/robot/honeycomb/sub_interface.robot | 20 +-- resources/libraries/robot/honeycomb/tap.robot | 16 +- .../libraries/robot/honeycomb/vhost_user.robot | 16 +- resources/libraries/robot/honeycomb/vxlan.robot | 16 +- .../libraries/robot/honeycomb/vxlan_gpe.robot | 16 +- 15 files changed, 200 insertions(+), 135 deletions(-) (limited to 'resources/libraries/robot/honeycomb') diff --git a/resources/libraries/robot/honeycomb/bridge_domain.robot b/resources/libraries/robot/honeycomb/bridge_domain.robot index a286d11907..8f17edafc2 100644 --- a/resources/libraries/robot/honeycomb/bridge_domain.robot +++ b/resources/libraries/robot/honeycomb/bridge_domain.robot @@ -52,7 +52,7 @@ | | [Arguments] | ${node} | ${bd_name} | ${settings} | | Add BD | ${node} | ${bd_name} | &{settings} -| Bridge domain configuration from Honeycomb should be +| Bridge domain Operational Data From Honeycomb Should Be | | [Documentation] | Uses Honeycomb API to verify bridge domain settings\ | | ... | against provided values. | | ... @@ -63,14 +63,14 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Bridge domain configuration from Honeycomb should be \ +| | ... | \| Bridge domain Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| bd-04 \| ${{flood:True,learn:False}} \| | | [Arguments] | ${node} | ${bd_name} | ${settings} | | ${api_data}= | Get bd oper data | ${node} | ${bd_name} | | :FOR | ${key} | IN | @{settings.keys()} | | | Should be equal | ${settings['${key}']} | ${api_data['${key}']} -| Bridge domain configuration from VAT should be +| Bridge domain Operational Data From VAT Should Be | | [Documentation] | Uses VAT to verify bridge domain settings\ | | ... | against provided values. | | ... @@ -81,7 +81,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Bridge domain configuration from VAT should be \ +| | ... | \| Bridge domain Operational Data From VAT Should Be \ | | ... | \| ${nodes['DUT1']} \| bd-04 \| ${{flood:True,learn:False}} \| | | [Arguments] | ${node} | ${bd_index} | ${settings} | | ${vat_data}= | VPP get bridge domain data | ${node} @@ -278,7 +278,7 @@ | | ... | ${settings['split-horizon-group']} | | ... | ${settings['bridged-virtual-interface']} -| Bridge domain configuration in interface operational data should be empty +| Bridge domain Operational Interface Assignment should be empty | | [Documentation] | Get interface operational data and retrieve bridge | | ... | domain configuration from it. It should be empty. | | ... @@ -288,7 +288,7 @@ | | ... | will be checked.Type: string | | ... | | ... | *Example:* -| | ... | \| Bridge domain configuration in interface operational data should \ +| | ... | \| Bridge domain Operational Interface Assignment should \ | | ... | be empty \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| | | ... | | [Arguments] | ${node} | ${interface} @@ -297,7 +297,7 @@ | | ... | ${node} | ${interface} | | Should be empty | ${if_data} -| Bridge domain configuration in interface operational data should be +| Bridge domain Operational Interface Assignment should be | | [Documentation] | Get interface operational data and retrieve bridge | | ... | domain configuration from it. Compare the data to the expected one. | | ... @@ -308,7 +308,7 @@ | | ... | - bd_settings - The referential bridge domain data. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Bridge domain configuration in interface operational data should \ +| | ... | \| Bridge domain Operational Interface Assignment should \ | | ... | be \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| ${if_bd_settings} \| | | ... | | [Arguments] | ${node} | ${interface} | ${bd_settings} diff --git a/resources/libraries/robot/honeycomb/dhcp.robot b/resources/libraries/robot/honeycomb/dhcp.robot index d3fe942668..966c73f85c 100644 --- a/resources/libraries/robot/honeycomb/dhcp.robot +++ b/resources/libraries/robot/honeycomb/dhcp.robot @@ -17,7 +17,7 @@ | Documentation | Keywords used to test Honeycomb DHCP features. *** Keywords *** -| DHCP relay configuration from Honeycomb should be empty +| DHCP relay Operational Data From Honeycomb Should Be empty | | [Documentation] | Uses Honeycomb API to retrieve DHCP relay configuration\ | | ... | and expects to fail. | | ... @@ -26,7 +26,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| DHCP relay configuration from Honeycomb should be empty \ +| | ... | \| DHCP relay Operational Data From Honeycomb Should Be empty \ | | ... | \| ${nodes['DUT1']} \| | | [Arguments] | ${node} | | Run keyword and expect error | *Status code: 404* diff --git a/resources/libraries/robot/honeycomb/honeycomb.robot b/resources/libraries/robot/honeycomb/honeycomb.robot index 27aa078ef9..7813ee26bf 100644 --- a/resources/libraries/robot/honeycomb/honeycomb.robot +++ b/resources/libraries/robot/honeycomb/honeycomb.robot @@ -85,9 +85,9 @@ | | ... | \| Restart Honeycomb and VPP and clear persisted configuration \ | | ... | \| ${nodes['DUT1']} \| | | [Arguments] | ${node} -| | Log | Performing clean restart of Honeycomb and VPP. | console=True | | Stop Honeycomb service on DUTs | ${node} | | Clear persisted Honeycomb configuration | ${node} +| | Log | Persistence files cleared. | console=True | | Setup DUT | ${node} | | Setup Honeycomb service on DUTs | ${node} @@ -101,7 +101,6 @@ | | ... | | ... | \| Restart Honeycomb and VPP \| ${nodes['DUT1']} \| | | [Arguments] | ${node} -| | Log | Performing clean restart of Honeycomb and VPP. | console=True | | Restart Honeycomb and VPP on DUTs | ${node} | | Wait until keyword succeeds | 4min | 16sec | | ... | Check honeycomb startup state | ${node} diff --git a/resources/libraries/robot/honeycomb/interfaces.robot b/resources/libraries/robot/honeycomb/interfaces.robot index a08ce3fceb..2ab97e0d96 100644 --- a/resources/libraries/robot/honeycomb/interfaces.robot +++ b/resources/libraries/robot/honeycomb/interfaces.robot @@ -544,7 +544,7 @@ | | | interfaceAPI.Configure interface ethernet | | | ... | ${node} | ${interface} | ${key} | ${ethernet['${key}']} -| Interface ethernet configuration from Honeycomb should be +| Interface ethernet Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves interface ethernet configuration\ | | ... | through Honeycomb and compares with settings supplied in arguments. | | ... @@ -555,7 +555,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Interface ethernet configuration from Honeycomb should be \ +| | ... | \| Interface ethernet Operational Data From Honeycomb Should Be \ | | ... | should be \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \ | | ... | \| ${{'mtu': 1500}} \| | | [Arguments] | ${node} | ${interface} | ${ethernet} @@ -564,7 +564,7 @@ | | | Should be equal | | | ... | ${api_data['v3po:ethernet']['${key}']} | ${ethernet['${key}']} -| Interface ethernet configuration from VAT should be +| Interface ethernet Operational Data From VAT Should Be | | [Documentation] | Retrieves interface ethernet configuration\ | | ... | through VAT and compares with settings supplied in arguments. | | ... @@ -575,7 +575,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Interface ethernet configuration from VAT should be \ +| | ... | \| Interface ethernet Operational Data From VAT Should Be \ | | ... | should be \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| ${1500} \| | | [Arguments] | ${node} | ${interface} | ${mtu} | | ${vat_data}= | InterfaceCLI.VPP get interface data | ${node} | ${interface} @@ -636,7 +636,7 @@ | | ... | ${node} | ${interface} | | Should be equal | ${vat_data} | ${vrf_id} -| Interface configuration from Honeycomb should be empty +| Interface Operational Data From Honeycomb Should Be empty | | [Documentation] | Attempts to retrieve interface configuration through\ | | ... | Honeycomb and expects to get empty dictionary. | | ... @@ -646,14 +646,14 @@ | | ... | string | | ... | | ... | *Example:* -| | ... | \| Interface configuration from Honeycomb should be empty\ +| | ... | \| Interface Operational Data From Honeycomb Should Be empty\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| | | ... | | [Arguments] | ${node} | ${interface} | | ${api_data}= | interfaceAPI.Get interface oper data | ${node} | ${interface} | | Should be empty | ${api_data} -| Interface configuration from VAT should be empty +| Interface Operational Data From VAT Should Be empty | | [Documentation] | Attempts to retrieve Interface configuration through\ | | ... | VAT and expects to get empty dictionary. | | ... @@ -663,7 +663,7 @@ | | ... | string | | ... | | ... | *Example:* -| | ... | \| Interface configuration from VAT should be empty\ +| | ... | \| Interface Operational Data From VAT Should Be empty\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| | | ... | | [Arguments] | ${node} | ${interface} | diff --git a/resources/libraries/robot/honeycomb/nat.robot b/resources/libraries/robot/honeycomb/nat.robot index 17cda4763e..81bffe66d7 100644 --- a/resources/libraries/robot/honeycomb/nat.robot +++ b/resources/libraries/robot/honeycomb/nat.robot @@ -18,7 +18,7 @@ | Documentation | Keywords used to test Honeycomb NAT node. *** Keywords *** -| NAT configuration from Honeycomb should be empty +| NAT Operational Data From Honeycomb Should Be empty | | [Documentation] | Uses Honeycomb API to retrieve NAT operational data\ | | ... | and expects to find only default values. | | ... @@ -28,7 +28,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| NAT configuration from Honeycomb should be empty \ +| | ... | \| NAT Operational Data From Honeycomb Should Be empty \ | | ... | \| ${nodes['DUT1']} \| ${default_settings} \| | | [Arguments] | ${node} | ${default_settings} | | ${data}= | Get NAT Oper data | ${node} @@ -120,7 +120,7 @@ | | Configure NAT on interface | | ... | ${node} | ${interface} | ${direction} | ${True} -| NAT interface configuration from Honeycomb should be +| NAT interface Operational Data From Honeycomb Should Be | | [Documentation] | Uses Honeycomb API to retrieve interface operational data\ | | ... | and compares the NAT section against expected settings. | | ... @@ -132,13 +132,13 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| NAT interface configuration from Honeycomb should be \ +| | ... | \| NAT interface Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| outbound \| | | [Arguments] | ${node} | ${interface} | ${direction} | | ${data}= | Get interface oper data | ${node} | ${interface} | | Variable should exist | ${data['interface-nat:nat']['${direction}']} -| NAT interface configuration from Honeycomb should be empty +| NAT interface Operational Data From Honeycomb Should Be empty | | [Documentation] | Uses Honeycomb API to retrieve interface operational data\ | | ... | and expects to find no data for the given direction. | | ... @@ -150,13 +150,13 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| NAT interface configuration from Honeycomb should be empty \ +| | ... | \| NAT interface Operational Data From Honeycomb Should Be empty \ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| outbound \| | | [Arguments] | ${node} | ${interface} | ${direction} | | ${data}= | Get interface oper data | ${node} | ${interface} | | Variable should not exist | ${data['interface-nat:nat']['${direction}']} -| NAT interface configuration from VAT should be +| NAT interface Operational Data From VAT Should Be | | [Documentation] | Uses Honeycomb API to retrieve NAT configured interfaces\ | | ... | and compares with expected settings. | | ... @@ -167,7 +167,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| NAT interface configuration from VAT should be \ +| | ... | \| NAT interface Operational Data From VAT Should Be \ | | ... | \| ${nodes['DUT1']} \| ${settings} \| | | [Arguments] | ${node} | ${settings} | | ${data}= | VPP get NAT interfaces | ${node} diff --git a/resources/libraries/robot/honeycomb/nsh.robot b/resources/libraries/robot/honeycomb/nsh.robot index f2a8ffdf8d..434c72f516 100644 --- a/resources/libraries/robot/honeycomb/nsh.robot +++ b/resources/libraries/robot/honeycomb/nsh.robot @@ -19,7 +19,7 @@ | Documentation | Keywords used to test Honeycomb NSH node. *** Keywords *** -| NSH configuration from Honeycomb should be empty +| NSH Operational Data From Honeycomb Should Be empty | | [Documentation] | Uses Honeycomb API to retrieve NSH configuration\ | | ... | and expects to fail. | | ... @@ -28,7 +28,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| NSH configuration from Honeycomb should be empty \ +| | ... | \| NSH Operational Data From Honeycomb Should Be empty \ | | ... | \| ${nodes['DUT1']} \| | | [Arguments] | ${node} | | Run keyword and expect error | *Status code: 404* diff --git a/resources/libraries/robot/honeycomb/persistence.robot b/resources/libraries/robot/honeycomb/persistence.robot index a1c08c2ec1..2744ba6377 100644 --- a/resources/libraries/robot/honeycomb/persistence.robot +++ b/resources/libraries/robot/honeycomb/persistence.robot @@ -87,7 +87,7 @@ | | Setup DUT | ${node} | | Setup Honeycomb service on DUTs | ${node} -| Honeycomb configures every setting +| Multi-Feature Persistence Test Configuration | | [Documentation] | Uses Honeycomb to set basic settings for VxLAN,\ | | ... | bridge domains, TAP, vhost-user and VLAN. | | ... @@ -97,7 +97,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Honeycomb configures every setting \| ${nodes['DUT1']} \ +| | ... | \| Multi-Feature Persistence Test Configuration \| ${nodes['DUT1']} \ | | ... | \| GigabitEthernet0/8/0 \| | | ... | | [Arguments] | ${node} | ${interface} @@ -119,7 +119,7 @@ | | Honeycomb configures tag rewrite | | ... | ${node} | ${interface} | ${sub_if_id} | ${tag_rewrite_pop_1} -| Honeycomb and VPP should verify every setting +| Multi-Feature persistence Test Verification | | [Documentation] | Uses Honeycomb and VAT to verify settings for VxLAN,\ | | ... | bridge domains, TAP, vhost-user and VLAN. | | ... @@ -129,40 +129,43 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Honeycomb and VPP should verify every setting \| ${nodes['DUT1']} \ +| | ... | \| Multi-Feature persistence Test Verification \| ${nodes['DUT1']} \ | | ... | \| GigabitEthernet0/8/0 \| | | ... | | [Arguments] | ${node} | ${interface} -| | VxLAN configuration from Honeycomb should be +| | VxLAN Operational Data From Honeycomb Should Be | | ... | ${node} | ${vx_interface} | ${vxlan_settings} -| | VxLAN configuration from VAT should be +| | VxLAN Operational Data From VAT Should Be | | ... | ${node} | ${vxlan_settings} -| | Bridge domain configuration from Honeycomb should be +| | Bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${bd_name} | ${bd_settings} -| | Bridge domain configuration from VAT should be +| | Bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${0} | ${bd_settings} -| | TAP configuration from Honeycomb should be +| | TAP Operational Data From Honeycomb Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | TAP configuration from VAT should be +| | TAP Operational Data From VAT Should Be | | ... | ${node} | ${tap_interface} | ${tap_settings} -| | Vhost-user configuration from Honeycomb should be +| | Vhost-user Operational Data From Honeycomb Should Be | | ... | ${node} | ${vhost_interface} | ${vhost_user_client} -| | Vhost-user configuration from VAT should be +| | Vhost-user Operational Data From VAT Should Be | | ... | ${node} | ${vhost_user_client} -| | Sub-interface configuration from Honeycomb should be +| | Sub-interface Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface} | ${sub_if_id} | ${sub_if_1_oper} -| | Sub-interface configuration from VAT should be +| | Sub-interface Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_if_1_oper} | | Interface state from Honeycomb should be | ${node} | ${interface} | up | | Interface state from VAT should be | ${node} | ${interface} | up -| | Sub-interface bridge domain configuration from Honeycomb should be +| | Sub-interface bridge domain Operational Data From Honeycomb Should Be | | ... | ${node} | ${interface} | ${sub_if_id} | ${sub_bd_settings} -| | Sub-interface bridge domain configuration from VAT should be +| | Sub-interface bridge domain Operational Data From VAT Should Be | | ... | ${node} | ${sub_if_name} | ${sub_bd_settings} | | Rewrite tag from Honeycomb should be | | ... | ${node} | ${interface} | ${sub_if_id} | ${tag_rewrite_pop_1_oper} | | Rewrite tag from VAT should be | | ... | ${node} | ${sub_if_name} | ${tag_rewrite_pop_1_VAT} +| | ${data_conf}= | InterfaceAPI.Get all interfaces cfg data | ${node} +| | ${data_oper}= | InterfaceAPI.Get all interfaces oper data | ${node} +| | Compare interface lists | ${data_conf} | ${data_oper} | Honeycomb and VPP should have default configuration | | [Documentation] | Uses Honeycomb and VAT to verify settings for VxLAN,\ @@ -178,83 +181,146 @@ | | ... | ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -| | VxLAN configuration from Honeycomb should be empty +| | VxLAN Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vx_interface} -| | VxLAN configuration from VAT should be empty | ${node} +| | VxLAN Operational Data From VAT Should Be empty | ${node} | | Honeycomb should show no bridge domains | ${node} | | VAT should show no bridge domains | ${node} -| | TAP configuration from Honeycomb should be empty +| | TAP Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${tap_interface} -| | TAP configuration from VAT should be empty +| | TAP Operational Data From VAT Should Be empty | | ... | ${node} | ${tap_interface} -| | Vhost-user configuration from Honeycomb should be empty +| | Vhost-user Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${vhost_interface} -| | Vhost-user configuration from VAT should be empty +| | Vhost-user Operational Data From VAT Should Be empty | | ... | ${node} | | interface state from Honeycomb should be | | ... | ${node} | ${interface} | down | | And interface state from VAT should be | | ... | ${node} | ${interface} | down -| Honeycomb and VPP should not have default configuration -| | [Documentation] | Uses Honeycomb and VAT to verify settings for VxLAN,\ -| | ... | bridge domains, TAP, vhost-user and VLAN. Expects any\ -| | ... | configuration other than default. +| Persistence file is damaged during restart +| | [Documentation] | Shuts down Honeycomb, modifies persistence files to\ +| | ... | simulate damage, then restarts VPP and starts up Honeycomb again. | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* | | ... -| | ... | \| Honeycomb and VPP should not have default configuration \ -| | ... | \| ${nodes['DUT1']} \| +| | ... | \| Persistence file is damaged during restart \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -| | Run keyword and expect error | * -| | ... | Honeycomb and VPP should have default configuration | ${node} +| | Stop Honeycomb service on DUTs | ${node} +| | Modify persistence files | ${node} | { | abc +| | Setup DUT | ${node} +| | Setup Honeycomb service on DUTs | ${node} -| Honeycomb should show no rogue interfaces -| | [Documentation] | Checks if operational data contains interfaces not\ -| | ... | present in configuration and vice versa. +| Log persisted configuration on node +| | [Documentation] | Logs the content of Honeycomb's persitence files. | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* | | ... -| | ... | \| Honeycomb should show no rogue interfaces \| ${nodes['DUT1']} \| +| | ... | \| Log persisted configuration on node \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -| | ${data_conf}= | InterfaceAPI.Get all interfaces cfg data | ${node} -| | ${data_oper}= | InterfaceAPI.Get all interfaces oper data | ${node} -| | Compare interface lists | ${data_conf} | ${data_oper} +| | Log persisted configuration | ${node} -| Persistence file is damaged during restart -| | [Documentation] | Shuts down Honeycomb, modifies persistence files to\ -| | ... | simulate damage, then restarts VPP and starts up Honeycomb again. +| Interface Persistence Setup +| | [Documentation] | Configure interface state, ipv4 and ipv6 addresses +| | ... | and neighbors. | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* | | ... -| | ... | \| Persistence file is damaged during restart \| ${nodes['DUT1']} \| +| | ... | \| Interface Persistence Setup \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -| | Stop Honeycomb service on DUTs | ${node} -| | Modify persistence files | ${node} | { | abc -| | Setup DUT | ${node} -| | Setup Honeycomb service on DUTs | ${node} +| | Honeycomb and VPP should have default configuration | ${node} +| | Import Variables | resources/test_data/honeycomb/interface_ip.py +| | Honeycomb sets interface state | ${node} | ${interface} | up +| | Honeycomb sets interface ipv4 address with prefix +| | ... | ${node} | ${interface} | ${ipv4_address} | ${ipv4_prefix} +| | Honeycomb adds interface ipv4 neighbor +| | ... | ${node} | ${interface} | ${ipv4_neighbor} | ${neighbor_mac} +| | Honeycomb sets interface ipv6 address +| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix} +| | Honeycomb adds interface ipv6 neighbor +| | ... | ${node} | ${interface} | ${ipv6_neighbor} | ${neighbor_mac} -| Log persisted configuration on node -| | [Documentation] | Logs the content of Honeycomb's persitence files. +| Interface Persistence Check +| | [Documentation] | Verify interface state, ipv4 and ipv6 addresses +| | ... | and neighbors. | | ... | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* | | ... -| | ... | \| Log persisted configuration on node \| ${nodes['DUT1']} \| +| | ... | \| Interface Persistence Check \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Interface state from Honeycomb should be | ${node} | ${interface} | up +| | IPv4 address from Honeycomb should be +| | ... | ${node} | ${interface} | ${ipv4_address} | ${ipv4_prefix} +| | IPv4 address from VAT should be +| | ... | ${node} | ${interface} | ${ipv4_address} +| | ... | ${ipv4_prefix} | ${ipv4_mask} +| | IPv4 neighbor from Honeycomb should be +| | ... | ${node} | ${interface} | ${ipv4_neighbor} | ${neighbor_mac} +| | IPv6 address from Honeycomb should contain +| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix} +| | IPv6 address from VAT should contain +| | ... | ${node} | ${interface} | ${ipv6_address} | ${ipv6_prefix} +| | IPv6 neighbor from Honeycomb should be +| | ... | ${node} | ${interface} | ${ipv6_neighbor} | ${neighbor_mac} + +| Bridge Domain Persistence Setup +| | [Documentation] | Configure bridge domain, BD interface assignment +| | ... | and L2 fib entry. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Bridge Domain Persistence Setup \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -| | Log persisted configuration | ${node} \ No newline at end of file +| | Honeycomb and VPP should have default configuration | ${node} +| | Import Variables | resources/test_data/honeycomb/l2_fib.py +| | ... | ${node} | ${interface} | ${interface} +| | Honeycomb creates first l2 bridge domain +| | ... | ${node} | ${bd_name} | ${bd_settings} +| | Honeycomb adds interface to bridge domain +| | ... | ${node} | ${interface} | ${bd_name} | ${if_bd_settings} +| | Honeycomb adds L2 FIB entry to bridge domain +| | ... | ${node} | ${bd_name} | ${l2_fib_forward_cfg} + +| Bridge Domain Persistence Check +| | [Documentation] | Verify bridge domain, BD interface assignment +| | ... | and L2 fib entry. +| | ... +| | ... | *Arguments:* +| | ... | - node - information about a DUT node. Type: dictionary +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Bridge Domain Persistence Check \| ${nodes['DUT1']} \| +| | ... +| | [Arguments] | ${node} +| | Bridge domain Operational Data From Honeycomb Should Be +| | ... | ${node} | ${bd_name} | ${bd_settings} +| | Bridge domain Operational Data From VAT Should Be +| | ... | ${node} | ${0} | ${bd_settings} +| | Bridge domain Operational Interface Assignment should be +| | ... | ${node} | ${interface} | ${if_bd_settings} +| | L2 FIB Entry from Honeycomb should be +| | ... | ${node} | ${bd_name} | ${l2_fib_forward_oper} +| | L2 FIB entry from VAT should be +| | ... | ${node} | ${bd_index} | ${l2_fib_forward_vat} \ No newline at end of file diff --git a/resources/libraries/robot/honeycomb/policer.robot b/resources/libraries/robot/honeycomb/policer.robot index 65ef319d43..965b0f3cb5 100644 --- a/resources/libraries/robot/honeycomb/policer.robot +++ b/resources/libraries/robot/honeycomb/policer.robot @@ -36,7 +36,7 @@ | | Configure Policer | | ... | ${node} | ${policer_data['name']} | ${policer_data} -| Policer configuration from Honeycomb should be +| Policer Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves Policer operational data and verifies if\ | | ... | Policer is configured correctly. | | ... @@ -47,14 +47,14 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Policer configuration from Honeycomb should be \ +| | ... | \| Policer Operational Data From Honeycomb Should Be \ | | ... | \| ${node} \| ${policer_data} \| | | ... | | [Arguments] | ${node} | ${policer_data} | | ${data}= | Get Policer oper data | ${node} | ${policer_data['name']} | | Compare data structures | ${data[0]} | ${policer_data} -| Policer configuration from Honeycomb should be empty +| Policer Operational Data From Honeycomb Should Be empty | | [Documentation] | Checks whether Policer configuration from Honeycomb \ | | ... | is empty. | | ... @@ -63,7 +63,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Policer configuration from Honeycomb should be empty \ +| | ... | \| Policer Operational Data From Honeycomb Should Be empty \ | | ... | \| ${node} \| | | ... | | [Arguments] | ${node} diff --git a/resources/libraries/robot/honeycomb/port_mirroring.robot b/resources/libraries/robot/honeycomb/port_mirroring.robot index 81eedb944e..ef41c51fd3 100644 --- a/resources/libraries/robot/honeycomb/port_mirroring.robot +++ b/resources/libraries/robot/honeycomb/port_mirroring.robot @@ -42,7 +42,7 @@ | | InterfaceAPI.Configure interface SPAN | | ... | ${node} | ${dst_interface} | ${src_interfaces} -| Interface SPAN configuration from Honeycomb should be +| Interface SPAN Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves interface operational data and verifies that\ | | ... | SPAN mirroring is configured with the provided interfaces. | | ... @@ -54,7 +54,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Interface SPAN configuration from Honeycomb should be \ +| | ... | \| Interface SPAN Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| GigabitEthernet0/9/0 \| | | ... | | [Arguments] | ${node} | ${dst_interface} | @{src_interfaces} @@ -65,7 +65,7 @@ | | Sort list | ${src_interfaces} | | Lists should be equal | ${data} | ${src_interfaces} -| Interface SPAN configuration from Honeycomb should be empty +| Interface SPAN Operational Data From Honeycomb Should Be empty | | [Documentation] | Checks whether SPAN configuration from Honeycomb is empty. | | ... | | ... | *Arguments:* @@ -74,7 +74,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Interface SPAN configuration from Honeycomb should be empty \ +| | ... | \| Interface SPAN Operational Data From Honeycomb Should Be empty \ | | ... | \| ${node} \| GigabitEthernetO/8/0 \| | | ... | | [Arguments] | ${node} | ${dst_interface} @@ -82,7 +82,7 @@ | | Variable should not exist | | ... | ${data['v3po:span']['mirrored-interfaces']['mirrored-interface']} -| Interface SPAN configuration from VAT should be +| Interface SPAN Operational Data From VAT Should Be | | [Documentation] | Retrieves SPAN configuration from VAT dump and verifies\ | | ... | that SPAN mirroring is configured with the provided interfaces. | | ... @@ -94,7 +94,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| Interface SPAN configuration from VAT should be \ +| | ... | \| Interface SPAN Operational Data From VAT Should Be \ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| GigabitEthernet0/9/0 \| | | ... | | [Arguments] | ${node} | ${dst_interface} | @{src_interfaces} diff --git a/resources/libraries/robot/honeycomb/slaac.robot b/resources/libraries/robot/honeycomb/slaac.robot index 87abf3c34f..10e4887dca 100644 --- a/resources/libraries/robot/honeycomb/slaac.robot +++ b/resources/libraries/robot/honeycomb/slaac.robot @@ -35,7 +35,7 @@ | | Configure interface SLAAC | | ... | ${node} | ${interface} | ${slaac_data} -| SLAAC configuration from Honeycomb should be +| SLAAC Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves SLAAC operational data and verifies that\ | | ... | SLAAC is configured with the provided interfaces. | | ... @@ -47,14 +47,14 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| SLAAC configuration from Honeycomb should be \ +| | ... | \| SLAAC Operational Data From Honeycomb Should Be \ | | ... | \| ${node} \| ${interface} \| ${slaac_data} \| | | ... | | [Arguments] | ${node} | ${interface} | ${slaac_data} | | ${data}= | Get interface SLAAC oper data | ${node} | ${interface} | | Dictionaries should be equal | ${data} | ${slaac_data} -| SLAAC configuration from Honeycomb should be empty +| SLAAC Operational Data From Honeycomb Should Be empty | | [Documentation] | Checks whether SLAAC configuration from Honeycomb \ | | ... | is empty. | | ... @@ -64,7 +64,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| SLAAC configuration from Honeycomb should be empty \ +| | ... | \| SLAAC Operational Data From Honeycomb Should Be empty \ | | ... | \| ${node} \| ${interface} \| | | ... | | [Arguments] | ${node} | ${interface} diff --git a/resources/libraries/robot/honeycomb/sub_interface.robot b/resources/libraries/robot/honeycomb/sub_interface.robot index 5a42b56d11..1b1b80049b 100644 --- a/resources/libraries/robot/honeycomb/sub_interface.robot +++ b/resources/libraries/robot/honeycomb/sub_interface.robot @@ -46,7 +46,7 @@ | | interfaceAPI.Create sub interface | ${node} | ${super_interface} | | ... | ${match} | ${tags} | &{sub_interface_settings} -| Sub-interface configuration from Honeycomb should be +| Sub-interface Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves sub-interface configuration through Honeycomb\ | | ... | and compares it with settings supplied in argument. | | ... @@ -58,7 +58,7 @@ | | ... | Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Sub-interface configuration from Honeycomb should be\ +| | ... | \| Sub-interface Operational Data From Honeycomb Should Be\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| 1\ | | ... | \| ${sub_if_1_params} \| | | ... @@ -69,7 +69,7 @@ | | ... | ${node} | ${super_interface} | ${identifier} | | interfaceAPI.Compare Data Structures | ${api_data} | ${sub_if_settings} -| Sub-interface configuration from Honeycomb should be empty +| Sub-interface Operational Data From Honeycomb Should Be empty | | [Documentation] | Retrieves sub-interface configuration through Honeycomb \ | | ... | and expects no data. | | ... @@ -79,7 +79,7 @@ | | ... | - identifier - Sub-interface ID. Type: integer or string | | ... | | ... | *Example:* -| | ... | \| Sub-interface configuration from Honeycomb should be empty\ +| | ... | \| Sub-interface Operational Data From Honeycomb Should Be empty\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| 1 \| | | ... | | [Arguments] | ${node} | ${super_interface} | ${identifier} @@ -112,7 +112,7 @@ | | Should be equal | ${api_data['admin-status']} | ${admin_state} | | Should be equal | ${api_data['oper-status']} | ${oper_state} -| Sub-interface configuration from VAT should be +| Sub-interface Operational Data From VAT Should Be | | [Documentation] | Retrieves sub-interface configuration through VAT and\ | | ... | compares it with settings supplied in argument. | | ... @@ -124,7 +124,7 @@ | | ... | sub-interface to be checked. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Sub-interface configuration from VAT should be\ +| | ... | \| Sub-interface Operational Data From VAT Should Be\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0.1 \| ${sub_if_1_params} \| | | ... | | [Arguments] | ${node} | ${sub_interface} | ${sub_interface_settings} @@ -268,7 +268,7 @@ | | interfaceAPI.Add bridge domain to sub interface | | ... | ${node} | ${super_if} | ${identifier} | ${sub_bd_setings} -| Sub-interface bridge domain configuration from Honeycomb should be +| Sub-interface bridge domain Operational Data From Honeycomb Should Be | | [Documentation] | Uses Honeycomb API to verify sub-interface assignment to\ | | ... | a bridge domain. | | ... @@ -279,7 +279,7 @@ | | ... | - settings - Bridge domain parameters to be checked. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Sub-interface bridge domain configuration from Honeycomb should be\ +| | ... | \| Sub-interface bridge domain Operational Data From Honeycomb Should Be\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0 \| 1 \| ${bd_settings} \| | | ... | | [Arguments] | ${node} | ${super_if} | ${identifier} | ${settings} @@ -289,7 +289,7 @@ | | Should be equal | ${if_data['bridge-domain']} | | ... | ${settings['bridge-domain']} -| Sub-interface bridge domain configuration from VAT should be +| Sub-interface bridge domain Operational Data From VAT Should Be | | [Documentation] | Uses VAT to verify sub-interface assignment to a bridge\ | | ... | domain. | | ... @@ -300,7 +300,7 @@ | | ... | - setings - Parameters to be checked. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Sub-interface bridge domain configuration from VAT should be\ +| | ... | \| Sub-interface bridge domain Operational Data From VAT Should Be\ | | ... | \| ${nodes['DUT1']} \| GigabitEthernet0/8/0.1 \| ${sub_bd_setings} \| | | ... | | [Arguments] | ${node} | ${interface} | ${settings} diff --git a/resources/libraries/robot/honeycomb/tap.robot b/resources/libraries/robot/honeycomb/tap.robot index 2fffffa067..1a045d1909 100644 --- a/resources/libraries/robot/honeycomb/tap.robot +++ b/resources/libraries/robot/honeycomb/tap.robot @@ -67,7 +67,7 @@ | | [Arguments] | ${node} | ${interface} | | interfaceAPI.Delete interface | ${node} | ${interface} -| TAP configuration from Honeycomb should be +| TAP Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves interface TAP configuration through Honeycomb\ | | ... | and compares with settings supplied in argument. | | ... @@ -78,7 +78,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| TAP configuration from Honeycomb should be \ +| | ... | \| TAP Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| tap_int1 \| ${{'tap-name':'tap1',\ | | ... | 'mac':'08:00:27:60:26:ab', 'device-instance':3}} \| | | ... @@ -89,7 +89,7 @@ | | ${api_mac}= | Set Variable | ${api_data['phys-address']} | | Should be equal | ${api_mac} | ${settings['mac']} -| TAP configuration from VAT should be +| TAP Operational Data From VAT Should Be | | [Documentation] | Retrieves interface TAP configuration through VAT and\ | | ... | compares with settings supplied in argument. | | ... @@ -99,7 +99,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| TAP configuration from Honeycomb should be \ +| | ... | \| TAP Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| ${{'tap-name':'tap1',\ | | ... | 'mac':'08:00:27:60:26:ab', 'device-instance':3}} \| | | ... @@ -108,7 +108,7 @@ | | Should be equal | ${vat_data['dev_name']} | ${settings['tap-name']} # other settings not accessible through VAT commands -| TAP configuration from Honeycomb should be empty +| TAP Operational Data From Honeycomb Should Be empty | | [Documentation] | Attempts to retrieve interface TAP configuration\ | | ... | through Honeycomb and expects to recieve an empty dictionary. | | ... @@ -118,7 +118,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| TAP configuration from Honeycomb should be empty\ +| | ... | \| TAP Operational Data From Honeycomb Should Be empty\ | | ... | \| ${nodes['DUT1']} \| tap_int1 \| | | ... | | [Arguments] | ${node} | ${interface} @@ -126,7 +126,7 @@ | | Run keyword and expect error | *KeyError: 'v3po:tap' | Set Variable | | ... | ${api_data['v3po:tap']} -| TAP configuration from VAT should be empty +| TAP Operational Data From VAT Should Be empty | | [Documentation] | Attempts to retrieve interface TAP configuration\ | | ... | through VAT and expects a "no data" error. | | ... @@ -136,7 +136,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| TAP configuration from VAT should be empty\ +| | ... | \| TAP Operational Data From VAT Should Be empty\ | | ... | \| ${nodes['DUT1']} \| tap_int1 \| | | ... | | [Arguments] | ${node} | ${interface} diff --git a/resources/libraries/robot/honeycomb/vhost_user.robot b/resources/libraries/robot/honeycomb/vhost_user.robot index 89f6ddf09f..b0941ed1d3 100644 --- a/resources/libraries/robot/honeycomb/vhost_user.robot +++ b/resources/libraries/robot/honeycomb/vhost_user.robot @@ -67,7 +67,7 @@ | | interfaceAPI.Configure interface vhost user | ${node} | ${interface} | | ... | &{settings} -| Vhost-user configuration from Honeycomb should be +| Vhost-user Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves interface vhost-user configuration through\ | | ... | Honeycomb and compares it with settings supplied in argument. | | ... @@ -78,7 +78,7 @@ | | ... | Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Vhost-user configuration from Honeycomb should be\ +| | ... | \| Vhost-user Operational Data From Honeycomb Should Be\ | | ... | \| ${nodes['DUT1']} \| vhost_test \| ${vhost_user_settings} \| | | ... | | [Arguments] | ${node} | ${interface} | ${settings} @@ -87,7 +87,7 @@ | | :FOR | ${key} | IN | @{settings.keys()} | | | Should be equal | ${api_vhost['${key}']} | ${settings['${key}']} -| Vhost-user configuration from VAT should be +| Vhost-user Operational Data From VAT Should Be | | [Documentation] | Retrieves interface vhost-user configuration through VAT\ | | ... | and compares it with settings supplied in argument. | | ... @@ -97,7 +97,7 @@ | | ... | Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Vhost-user configuration from VAT should be\ +| | ... | \| Vhost-user Operational Data From VAT Should Be\ | | ... | \| ${nodes['DUT1']} \| vhost_test \| | | ... | | ... | *Note:* @@ -113,7 +113,7 @@ | | should be equal as strings | ${vat_data['is_server']} | | ... | ${translate['${settings['role']}']} -| Vhost-user configuration from Honeycomb should be empty +| Vhost-user Operational Data From Honeycomb Should Be empty | | [Documentation] | Attempts to retrieve interface vhost-user configuration\ | | ... | through Honeycomb and expects to recieve an empty dictionary. | | ... @@ -122,7 +122,7 @@ | | ... | - interface - name of an interface on the specified node. Type: string | | ... | | ... | *Example:* -| | ... | \| Vhost-user configuration from Honeycomb should be empty\ +| | ... | \| Vhost-user Operational Data From Honeycomb Should Be empty\ | | ... | \| ${nodes['DUT1']} \| vhost_test \| | | ... | | [Arguments] | ${node} | ${interface} @@ -130,7 +130,7 @@ | | Run keyword and expect error | *KeyError: 'v3po:vhost-user' | | ... | Should be empty | ${api_data['v3po:vhost-user']} -| Vhost-user configuration from VAT should be empty +| Vhost-user Operational Data From VAT Should Be empty | | [Documentation] | Attempts to retrieve interface vhost-user configuration\ | | ... | through VAT and expects a "no data" error. | | ... @@ -138,7 +138,7 @@ | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| Vhost-user configuration from VAT should be empty\ +| | ... | \| Vhost-user Operational Data From VAT Should Be empty\ | | ... | \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} diff --git a/resources/libraries/robot/honeycomb/vxlan.robot b/resources/libraries/robot/honeycomb/vxlan.robot index 07c5495ec7..b3bf083587 100644 --- a/resources/libraries/robot/honeycomb/vxlan.robot +++ b/resources/libraries/robot/honeycomb/vxlan.robot @@ -49,7 +49,7 @@ | | [Arguments] | ${node} | ${interface} | | interfaceAPI.Delete interface | ${node} | ${interface} -| VxLAN configuration from Honeycomb should be +| VxLAN Operational Data From Honeycomb Should Be | | [Documentation] | Retrieves interface VxLAN configuration through Honeycomb\ | | ... | and compares with settings supplied in argument. | | ... @@ -60,7 +60,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| VxLAN configuration from Honeycomb should be \ +| | ... | \| VxLAN Operational Data From Honeycomb Should Be \ | | ... | \|${nodes['DUT1']} \| vxlan_01 \| ${{'src':'192.168.0.2',\ | | ... | 'dst':'192.168.0.3', 'vni':5, 'encap-vrf-id':0}} \| | | ... @@ -70,7 +70,7 @@ | | :FOR | ${key} | IN | @{settings.keys()} | | | Should be equal | ${api_vxlan['${key}']} | ${settings['${key}']} -| VxLAN configuration from VAT should be +| VxLAN Operational Data From VAT Should Be | | [Documentation] | Retrieves interface VxLAN configuration through VAT and\ | | ... | compares with settings supplied in argument. | | ... @@ -80,7 +80,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| VxLAN configuration from Honeycomb should be \ +| | ... | \| VxLAN Operational Data From Honeycomb Should Be \ | | ... | \|${nodes['DUT1']} \| ${{'src':'192.168.0.2',\ | | ... | 'dst':'192.168.0.3', 'vni':5, 'encap-vrf-id':0}} \| | | ... @@ -97,7 +97,7 @@ | | Should be equal | | ... | ${vat_data['encap_vrf_id']} | ${settings['encap-vrf-id']} -| VxLAN configuration from Honeycomb should be empty +| VxLAN Operational Data From Honeycomb Should Be empty | | [Documentation] | Attempts to retrieve interface VxLAN configuration\ | | ... | through Honeycomb and expects to recieve an empty dictionary. | | ... @@ -107,7 +107,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| VxLAN configuration from Honeycomb should be empty\ +| | ... | \| VxLAN Operational Data From Honeycomb Should Be empty\ | | ... | \|${nodes['DUT1']} \| vxlan_01 \| | | ... | | [Arguments] | ${node} | ${interface} @@ -115,7 +115,7 @@ | | Run keyword and expect error | *KeyError: 'v3po:vxlan' | Set Variable | | ... | ${api_data['v3po:vxlan']} -| VxLAN configuration from VAT should be empty +| VxLAN Operational Data From VAT Should Be empty | | [Documentation] | Attempts to retrieve interface VxLAN configuration\ | | ... | through VAT and expects a "no data" error. | | ... @@ -125,7 +125,7 @@ | | ... | | ... | *Example:* | | ... -| | ... | \| VxLAN configuration from VAT should be empty\ +| | ... | \| VxLAN Operational Data From VAT Should Be empty\ | | ... | \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} diff --git a/resources/libraries/robot/honeycomb/vxlan_gpe.robot b/resources/libraries/robot/honeycomb/vxlan_gpe.robot index 14a4910bb6..6384061edd 100644 --- a/resources/libraries/robot/honeycomb/vxlan_gpe.robot +++ b/resources/libraries/robot/honeycomb/vxlan_gpe.robot @@ -66,7 +66,7 @@ | | ... | | interfaceAPI.Delete interface | ${node} | ${interface} -| VxLAN GPE configuration from Honeycomb should be +| VxLAN GPE Operational Data From Honeycomb Should Be | | [Documentation] | Uses Honeycomb API to get operational data about the\ | | ... | given interface and compares them to the values provided as arguments. | | ... @@ -78,7 +78,7 @@ | | ... | - vxlan_gpe_settings - VxLAN GPE specific parameters. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| VxLAN GPE configuration from Honeycomb should be \ +| | ... | \| VxLAN GPE Operational Data From Honeycomb Should Be \ | | ... | \| ${nodes['DUT1']} \| vxlan_gpe_tunnel0 \| ${base_params} \ | | ... | \| ${vxlan_gpe_params} \| | | ... @@ -101,7 +101,7 @@ | | ... | AND | | ... | Should be equal as strings | ${api_data['oper-status']} | down -| VxLAN GPE configuration from VAT should be +| VxLAN GPE Operational Data From VAT Should Be | | [Documentation] | Uses VAT to get operational data about the given\ | | ... | interface and compares them to the values provided as arguments. | | ... @@ -111,7 +111,7 @@ | | ... | - vxlan_gpe_settings - VxLAN GPE specific parameters. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| VxLAN GPE configuration from VAT should be \ +| | ... | \| VxLAN GPE Operational Data From VAT Should Be \ | | ... | \| ${nodes['DUT1']} \| vxlan_gpe_tunnel0 \| ${vxlan_gpe_params} \| | | ... | | [Arguments] | ${node} | ${interface} | ${vxlan_gpe_params} @@ -154,7 +154,7 @@ | | Should be equal as strings | | ... | ${api_data['if-index']} | ${sw_if_index} -| VxLAN GPE configuration from Honeycomb should be empty +| VxLAN GPE Operational Data From Honeycomb Should Be empty | | [Documentation] | Uses Honeycomb API to get operational data about\ | | ... | the given interface and expects to fail. | | ... @@ -162,7 +162,7 @@ | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| VxLAN GPE configuration from Honeycomb should be empty\ +| | ... | \| VxLAN GPE Operational Data From Honeycomb Should Be empty\ | | ... | \| ${nodes['DUT1']} \| vxlan_gpe_tunnel0 \| | | ... | | [Arguments] | ${node} | ${interface} @@ -170,7 +170,7 @@ | | ${api_data}= | interfaceAPI.Get interface oper data | ${node} | ${interface} | | Should be empty | ${api_data} -| VxLAN GPE configuration from VAT should be empty +| VxLAN GPE Operational Data From VAT Should Be empty | | [Documentation] | Uses VAT to get operational data about the given\ | | ... | interface and expects an empty dictionary. | | ... @@ -178,7 +178,7 @@ | | ... | - node - information about a DUT node. Type: dictionary | | ... | | ... | *Example:* -| | ... | \| VxLAN GPE configuration from VAT should be empty\ +| | ... | \| VxLAN GPE Operational Data From VAT Should Be empty\ | | ... | \| ${nodes['DUT1']} \| | | ... | | [Arguments] | ${node} -- cgit 1.2.3-korg