Improve test tag string parsing
[csit.git] / tests / honeycomb / func / mgmt-cfg-inttap-apihc-apivat-func.robot
1 # Copyright (c) 2016 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 *** Variables ***
15 # Interfaces to run tests on.
16 | ${interface}= | ${node['interfaces']['port1']['name']}
17 | ${tap_interface}= | tap_test
18 | ${tap_device_name}= | tap0
19 # Configuration which will be set and verified during tests.
20 | &{tap_settings}= | host-interface-name=tap_test | mac=08:00:27:c0:5d:37
21 | ... | id=${1}
22 | &{tap_settings_oper}= | device-name=tap0 | tx-ring-size=${256}
23 | ... | rx-ring-size=${256} | host-interface-name=tap_test
24 | ... | mac=08:00:27:c0:5d:37 | id=${1}
25 | &{tap_settings_vat}= | dev_name=tap0 | mac=08:00:27:c0:5d:37
26 | ... | rx_ring_sz=${256} | tx_ring_sz=${256} | id=${1}
27 | &{tap_settings2}= | host-interface-name=tap_test | mac=08:00:27:60:26:ab
28 | ... | id=${2}
29 | &{tap_settings2_oper}= | device-name=tap0 | tx-ring-size=${256}
30 | ... | rx-ring-size=${256} | host-interface-name=tap_test
31 | ... | mac=08:00:27:60:26:ab | id=${1}
32 | &{tap_settings2_vat}= | dev_name=tap0 | mac=08:00:27:60:26:ab
33 | ... | rx_ring_sz=${256} | tx_ring_sz=${256} | id=${1}
34
35 *** Settings ***
36 | Resource | resources/libraries/robot/shared/default.robot
37 | Resource | resources/libraries/robot/honeycomb/honeycomb.robot
38 | Resource | resources/libraries/robot/honeycomb/interfaces.robot
39 | Resource | resources/libraries/robot/honeycomb/tap.robot
40 | ...
41 | Force Tags | HC_FUNC
42 | ...
43 | Suite Setup | Set Up Honeycomb Functional Test Suite | ${node}
44 | ...
45 | Suite Teardown | Tear Down Honeycomb Functional Test Suite | ${node}
46 | ...
47 | Documentation | *Honeycomb TAP management test suite.*
48
49 *** Test Cases ***
50 | TC01: Honeycomb configures TAP interface
51 | | [Documentation] | Check if Honeycomb API can configure a TAP interface.
52 | | ...
53 | | Given TAP Operational Data From Honeycomb Should Be empty
54 | | ... | ${node} | ${tap_interface}
55 | | And TAP Operational Data From VAT Should Be empty
56 | | ... | ${node} | ${tap_interface}
57 | | When Honeycomb creates TAP interface
58 | | ... | ${node} | ${tap_interface} | ${tap_settings}
59 | | Then TAP Operational Data From Honeycomb Should Be
60 | | ... | ${node} | ${tap_interface} | ${tap_settings_oper}
61 | | And TAP Operational Data From VAT Should Be
62 | | ... | ${node} | ${tap_device_name} | ${tap_settings_vat}
63
64 | TC02: Honeycomb modifies existing TAP interface configuration
65 | | [Documentation] | Check if Honeycomb API can re-configure an existing TAP\
66 | | ... | interface with new settings.
67 | | ...
68 | | Given TAP Operational Data From Honeycomb Should Be
69 | | ... | ${node} | ${tap_interface} | ${tap_settings_oper}
70 | | And TAP Operational Data From VAT Should Be
71 | | ... | ${node} | ${tap_device_name} | ${tap_settings_vat}
72 | | When Honeycomb configures TAP interface
73 | | ... | ${node} | ${tap_interface} | ${tap_settings2}
74 | | Then TAP Operational Data From Honeycomb Should Be
75 | | ... | ${node} | ${tap_interface} | ${tap_settings2_oper}
76 | | And TAP Operational Data From VAT Should Be
77 | | ... | ${node} | ${tap_device_name} | ${tap_settings2_vat}
78
79 | TC03: Honeycomb removes TAP interface
80 | | [Documentation] | Check if Honeycomb API can remove TAP interface.
81 | | ...
82 | | Given TAP Operational Data From Honeycomb Should Be
83 | | ... | ${node} | ${tap_interface} | ${tap_settings2_oper}
84 | | And TAP Operational Data From VAT Should Be
85 | | ... | ${node} | ${tap_device_name} | ${tap_settings2_vat}
86 | | When Honeycomb removes TAP interface | ${node} | ${tap_interface}
87 | | Then TAP Operational Data From Honeycomb Should Be empty
88 | | ... | ${node} | ${tap_interface}
89 | | And TAP Operational Data From VAT Should Be empty
90 | | ... | ${node} | ${tap_device_name}