X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=tests%2Ffunc%2Fhoneycomb%2Fmgmt-cfg-int-subint-apihc-apivat-func.robot;h=9fb858ad25490279b40c801e6555fbe55796ad21;hp=2203597e2ea63db40734d616ef41771c1ca04f7e;hb=fa14d9f454a7248a71135375bfb0758cdb532ca7;hpb=5a6730f9ce36b4d09b121d401209d89288da301b 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 2203597e2e..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 @@ -19,12 +19,12 @@ | Resource | resources/libraries/robot/honeycomb/interfaces.robot | Variables | resources/test_data/honeycomb/sub_interfaces.py | Suite Teardown -| ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} -| Force Tags | honeycomb_sanity +| ... | Restart Honeycomb and VPP | ${node} +| Force Tags | HC_FUNC | Documentation | *Honeycomb sub-interface management test suite.* *** Variables *** -# Test interface 1 and its sub-interface parameters: +# Test interfaces and their sub-interface parameters: | ${super_if}= | ${node['interfaces']['port1']['name']} | ${super_if2}= | ${node['interfaces']['port3']['name']} | ${sub_if_id}= | ${sub_if_1_settings['identifier']} @@ -32,19 +32,19 @@ | ${sub_if2_name}= | ${super_if2}.${sub_if_id} *** Test Cases *** -| TC01: Honycomb creates sub-interface +| TC01: Honeycomb creates sub-interface | | [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,19 +387,78 @@ | | [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} +| TC19: Honeycomb configures sub-interface ipv6 address +| | [Documentation] | Check if Honeycomb can configure an ipv6 address on the\ +| | ... | sub-interface. +| | ... +| | Given sub-interface ipv6 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv6 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} +| | When Honeycomb sets sub-interface ipv6 address +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} +| | Then sub-interface IPv6 address from Honeycomb should contain +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} +| | And sub-interface IPv6 address from VAT should contain +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} + +| TC20: Honeycomb removes sub-interface ipv6 address +| | [Documentation] | Check if Honeycomb can remove configured ipv6 addresses\ +| | ... | from the sub-interface. +| | ... +| | Given sub-interface IPv6 address from Honeycomb should contain +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} +| | Run Keyword And Continue On Failure +| | ... | And sub-interface IPv6 address from VAT should contain +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} +| | When Honeycomb removes all sub-interface ipv6 addresses +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | Then sub-interface ipv6 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv6 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} + +| TC21: Honeycomb modifies existing sub-interface ipv6 address +| | [Documentation] | Check if Honeycomb can modify an ipv6 address already\ +| | ... | configured on the sub-interface. +| | [Teardown] | Honeycomb removes all sub-interface ipv6 addresses +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | Given sub-interface ipv6 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv6 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} +| | When Honeycomb sets sub-interface ipv6 address +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6['address']} | ${ipv6['prefix-length']} +| | And Honeycomb sets sub-interface ipv6 address +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6_2['address']} | ${ipv6_2['prefix-length']} +| | Then sub-interface IPv6 address from Honeycomb should contain +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv6_2['address']} | ${ipv6_2['prefix-length']} +| | And sub-interface IPv6 address from VAT should contain +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv6_2['address']} | ${ipv6_2['prefix-length']} + + *** Keywords *** | Set super and sub interfaces up | | [Documentation] | Honeycomb sets super-interface and sub-interface up, in \