aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorselias <samelias@cisco.com>2017-03-08 10:15:52 +0100
committerTibor Frank <tifrank@cisco.com>2017-03-13 13:35:17 +0000
commit5a6730f9ce36b4d09b121d401209d89288da301b (patch)
tree6016a30067363f48709738bc926090bbe2407b51
parent579c007f959a433607fa3b920e7c7089a9f9ba8d (diff)
HC Test: add test for vlan sub-interface exact tag match
Change-Id: Ie5feb1ac6c46f447a20d388680fc19854f2c7ef6 Signed-off-by: selias <samelias@cisco.com>
-rw-r--r--resources/test_data/honeycomb/sub_interfaces.py10
-rw-r--r--tests/func/honeycomb/mgmt-cfg-int-subint-apihc-apivat-func.robot23
2 files changed, 29 insertions, 4 deletions
diff --git a/resources/test_data/honeycomb/sub_interfaces.py b/resources/test_data/honeycomb/sub_interfaces.py
index a8afb22575..98e2b13c2f 100644
--- a/resources/test_data/honeycomb/sub_interfaces.py
+++ b/resources/test_data/honeycomb/sub_interfaces.py
@@ -13,6 +13,8 @@
"""Test variables for Honeycomb sub-interface test suite."""
+from copy import deepcopy
+
# Sub-interface 1 and its settings:
sub_if_1_settings = {
"identifier": "1",
@@ -37,7 +39,7 @@ sub_if_1_tags = [
}
]
-sub_if_1_match = "vlan-tagged-exact-match"
+sub_if_1_match = "vlan-tagged"
# Expected operational data: sub-interface.
sub_if_1_oper = {
@@ -285,3 +287,9 @@ ipv4_2 = {
"address": "192.168.0.5",
"netmask": "255.255.0.0",
"prefix-length": 16}
+
+sub_if_2_settings = sub_if_1_settings
+sub_if_2_tags = sub_if_1_tags
+sub_if_2_match = "vlan-tagged-exact-match"
+sub_if_2_oper = deepcopy(sub_if_1_oper)
+sub_if_2_oper["match"]["vlan-tagged"]["match-exact-tags"] = True
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 9ee12e1a18..2203597e2e 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,18 +18,18 @@
| 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 | Run keywords
-| ... | Run Keyword If Any Tests Failed
+| Suite Teardown
| ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
-| ... | AND | Honeycomb removes all bridge domains | ${node}
| Force Tags | honeycomb_sanity
| Documentation | *Honeycomb sub-interface management test suite.*
*** Variables ***
# Test interface 1 and its sub-interface parameters:
| ${super_if}= | ${node['interfaces']['port1']['name']}
+| ${super_if2}= | ${node['interfaces']['port3']['name']}
| ${sub_if_id}= | ${sub_if_1_settings['identifier']}
| ${sub_if_name}= | ${super_if}.${sub_if_id}
+| ${sub_if2_name}= | ${super_if2}.${sub_if_id}
*** Test Cases ***
| TC01: Honycomb creates sub-interface
@@ -383,6 +383,23 @@
| | ... | ${node} | ${sub_if_name}
| | ... | ${ipv4_2['address']} | ${ipv4_2['prefix-length']}
+| 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
+| | And sub-interface configuration from Honeycomb should be empty
+| | ... | ${node} | ${super_if2} | ${sub_if_id}
+| | And interface configuration 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
+| | ... | ${node} | ${super_if2} | ${sub_if_id} | ${sub_if_2_oper}
+| | And Sub-interface configuration 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}
+
*** Keywords ***
| Set super and sub interfaces up
| | [Documentation] | Honeycomb sets super-interface and sub-interface up, in \