X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=tests%2Ffunc%2Fhoneycomb%2Fmgmt-cfg-int-subint-apihc-apivat-func.robot;h=f766eb296cb08ef4082934c897c094e6580fe55d;hb=53d69321e41aa6fd94abc16c7050314dc2e53f08;hp=9fb858ad25490279b40c801e6555fbe55796ad21;hpb=a114591eac9f52502048db886da2fb228c62254d;p=csit.git 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 9fb858ad25..f766eb296c 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 @@ -18,9 +18,13 @@ | Resource | resources/libraries/robot/honeycomb/bridge_domain.robot | Resource | resources/libraries/robot/honeycomb/interfaces.robot | Variables | resources/test_data/honeycomb/sub_interfaces.py -| Suite Teardown -| ... | Restart Honeycomb and VPP | ${node} +| ... +| Suite Setup | Add Interface local0 To Topology | ${node} +| ... +| Suite Teardown | Restart Honeycomb and VPP | ${node} +| ... | Force Tags | HC_FUNC +| ... | Documentation | *Honeycomb sub-interface management test suite.* *** Variables *** @@ -35,7 +39,7 @@ | TC01: Honeycomb creates sub-interface | | [Documentation] | Check if Honeycomb creates a sub-interface. | | ... -| | Given Honeycomb sets interface state | ${node} | ${super_if} | down +| | Given Honeycomb configures interface state | ${node} | ${super_if} | down | | And sub-interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${super_if} | ${sub_if_id} | | And interface Operational Data From VAT Should Be empty @@ -61,7 +65,7 @@ | | ... | ${node} | ${super_if} | ${sub_if_id} | down | down | | Sub-interface state from VAT should be | | ... | ${node} | ${sub_if_name} | down | down -| | When Honeycomb sets interface state +| | When Honeycomb configures interface state | | ... | ${node} | ${super_if} | up | | Then interface state from Honeycomb should be | | ... | ${node} | ${super_if} | up @@ -111,7 +115,7 @@ | | ... | ${node} | ${super_if} | up | | And interface state from VAT should be | | ... | ${node} | ${super_if} | up -| | When Honeycomb sets interface state +| | When Honeycomb configures interface state | | ... | ${node} | ${super_if} | down | | Then interface state from Honeycomb should be | | ... | ${node} | ${super_if} | down @@ -364,8 +368,10 @@ | TC17: Honeycomb modifies existing sub-interface ipv4 address | | [Documentation] | Check if Honeycomb can modify an ipv4 address already\ | | ... | configured on the sub-interface. +| | ... | | [Teardown] | Honeycomb removes all sub-interface ipv4 addresses | | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | | Given sub-interface ipv4 address from Honeycomb should be empty | | ... | ${node} | ${super_if} | ${sub_if_id} | | And sub-interface ipv4 address from VAT should be empty @@ -386,7 +392,8 @@ | TC18: Honeycomb modifies sub-interface exact tag match | | [Documentation] | Check if Honeycomb can modify a sub-interface with exact\ | | ... | tag match. -| | Given Honeycomb sets interface state | ${node} | ${super_if2} | down +| | ... +| | Given Honeycomb configures interface state | ${node} | ${super_if2} | down | | And sub-interface Operational Data From Honeycomb Should Be empty | | ... | ${node} | ${super_if2} | ${sub_if_id} | | And interface Operational Data From VAT Should Be empty @@ -439,8 +446,10 @@ | 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 @@ -458,6 +467,86 @@ | | ... | ${node} | ${sub_if_name} | | ... | ${ipv6_2['address']} | ${ipv6_2['prefix-length']} +| TC22: Honeycomb can configure unnumbered sub-interface +| | [Documentation] | Check if Honeycomb can configure an unnumbered interface\ +| | ... | on a sub-interface, borrowing the IP address of 'local0'. +| | ... +| | Given sub-interface ipv4 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv4 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} +| | And Honeycomb sets interface IPv4 address | ${node} +| | ... | local0 | ${ipv4['address']} | ${ipv4['prefix-length']} +| | When Honeycomb adds unnumbered configuration to interface +| | ... | ${node} | ${super_if}.${sub_if_id} | local0 +| | Then IPv4 address from Honeycomb should be +| | ... | ${node} | local0 | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And IPv4 address from VAT should be +| | ... | ${node} | local0 +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} | ${ipv4['netmask']} +| | And sub-interface ipv4 address from Honeycomb should be +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And sub-interface ipv4 address from VAT should be +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} + +| TC23: Honeycomb removes sub-interface unnumbered configuration +| | [Documentation] | Check if Honeycomb can remove unnumbered configuration\ +| | ... | from a sub-interface. +| | ... +| | [Teardown] | Honeycomb removes interface IPv4 addresses | ${node} +| | ... | local0 +| | ... +| | Given IPv4 address from Honeycomb should be +| | ... | ${node} | local0 | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And IPv4 address from VAT should be +| | ... | ${node} | local0 +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} | ${ipv4['netmask']} +| | And sub-interface ipv4 address from Honeycomb should be +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And sub-interface ipv4 address from VAT should be +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} +| | When Honeycomb removes unnumbered configuration from interface +| | ... | ${node} | ${super_if}.${sub_if_id} +| | Then IPv4 address from Honeycomb should be +| | ... | ${node} | local0 | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And IPv4 address from VAT should be +| | ... | ${node} | local0 +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} | ${ipv4['netmask']} +| | And sub-interface ipv4 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv4 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} + +| TC24: Honeycomb can configure unnumbered interface using a sub-interface +| | [Documentation] | Check if Honeycomb can configure an unnumbered interface\ +| | ... | on an interface, borrowing the IP address of a sub-interface. +| | ... +| | Given IPv4 address from Honeycomb should be empty | ${node} | local0 +| | And ipv4 address from VAT should be empty | ${node} | local0 +| | And sub-interface ipv4 address from Honeycomb should be empty +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | And sub-interface ipv4 address from VAT should be empty +| | ... | ${node} | ${sub_if_name} +| | And Honeycomb sets sub-interface ipv4 address +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} +| | When Honeycomb adds unnumbered configuration to interface +| | ... | ${node} | local0 | ${super_if}.${sub_if_id} +| | Then IPv4 address from Honeycomb should be +| | ... | ${node} | local0 | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And IPv4 address from VAT should be +| | ... | ${node} | local0 +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} | ${ipv4['netmask']} +| | And sub-interface ipv4 address from Honeycomb should be +| | ... | ${node} | ${super_if} | ${sub_if_id} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} +| | And sub-interface ipv4 address from VAT should be +| | ... | ${node} | ${sub_if_name} +| | ... | ${ipv4['address']} | ${ipv4['prefix-length']} *** Keywords *** | Set super and sub interfaces up @@ -475,7 +564,7 @@ | | ... | | [Arguments] | ${node} | ${super_interface} | ${identifier} | | ... -| | Honeycomb sets interface state +| | Honeycomb configures interface state | | ... | ${node} | ${super_interface} | up | | Honeycomb sets the sub-interface up | | ... | ${node} | ${super_interface} | ${identifier} @@ -495,7 +584,7 @@ | | ... | | [Arguments] | ${node} | ${super_interface} | ${identifier} | | ... -| | Honeycomb sets interface state +| | Honeycomb configures interface state | | ... | ${node} | ${super_interface} | down | | Honeycomb sets the sub-interface down | | ... | ${node} | ${super_interface} | ${identifier}