From 4f70ebf481d496f91d2b1ec27361c9898b19c451 Mon Sep 17 00:00:00 2001 From: selias Date: Fri, 25 Nov 2016 10:50:29 +0100 Subject: CSIT-481: HC Test: Port mirroring (SPAN) - add port mirroring test suite - add relevant keywords Change-Id: I4ff398dd2ab4323e2a53af2812bf07cbb7043252 Signed-off-by: selias --- tests/func/honeycomb/120_port_mirroring.robot | 64 +++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 tests/func/honeycomb/120_port_mirroring.robot (limited to 'tests/func/honeycomb/120_port_mirroring.robot') diff --git a/tests/func/honeycomb/120_port_mirroring.robot b/tests/func/honeycomb/120_port_mirroring.robot new file mode 100644 index 0000000000..521d59a244 --- /dev/null +++ b/tests/func/honeycomb/120_port_mirroring.robot @@ -0,0 +1,64 @@ +# Copyright (c) 2016 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/default.robot +| Resource | resources/libraries/robot/honeycomb/port_mirroring.robot +| Resource | resources/libraries/robot/honeycomb/interfaces.robot +| Resource | resources/libraries/robot/honeycomb/honeycomb.robot +| Force Tags | honeycomb_sanity +| Suite Setup | Add Interface local0 To Topology | ${node} +| Suite Teardown | Run Keyword If Any Tests Failed +| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node} +| Documentation | *Honeycomb port mirroring test suite.* +| ... +| ... | Test suite uses the first interface of the first DUT node. + +*** Variables *** +| ${interface1}= | ${node['interfaces']['port1']['name']} +| ${interface2}= | ${node['interfaces']['port3']['name']} +| ${interface3}= | local0 + +*** Test Cases *** +# TODO: Add verification once operational data is available (HONEYCOMB-306) +| Honeycomb can configure SPAN on an interface +| | [Documentation] | Honeycomb configures SPAN on interface and verifies/ +| | ... | against VPP SPAN dump. +| | Given SPAN configuration from VAT should not exist +| | ... | ${node} +| | When Honeycomb Configures SPAN on interface +| | ... | ${node} | ${interface1} | ${interface2} +| | Then Interface SPAN configuration from VAT should be +| | ... | ${node} | ${interface1} | ${interface2} + +| Honeycomb can disable SPAN on interface +| | [Documentation] | Honeycomb removes existing SPAN configuration\ +| | ... | on interface and verifies against VPP SPAN dump. +| | Given Interface SPAN configuration from VAT should be +| | ... | ${node} | ${interface1} | ${interface2} +| | When Honeycomb removes interface SPAN configuration +| | ... | ${node} | ${interface1} +| | Then SPAN configuration from VAT should not exist +| | ... | ${node} + +| Honeycomb can configure SPAN on one interface to mirror two interfaces +| | [Documentation] | Honeycomb configures SPAN on interface, mirroring\ +| | ... | two interfaces at the same time. Then verifies against VPP SPAN dump. +| | [Teardown] | Honeycomb removes interface SPAN configuration +| | ... | ${node} | ${interface1} +| | Given SPAN configuration from VAT should not exist +| | ... | ${node} +| | When Honeycomb Configures SPAN on interface +| | ... | ${node} | ${interface1} | ${interface2} | ${interface3} +| | Then Interface SPAN configuration from VAT should be +| | ... | ${node} | ${interface1} | ${interface2} | ${interface3} -- cgit 1.2.3-korg