aboutsummaryrefslogtreecommitdiffstats
path: root/tests/honeycomb/func/mgmt-statepersist-apihc-func.robot
blob: b7fe610b185f0a9b076694a182153bb9133d5cab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# 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.

*** Variables***
# Interface to run tests on.
| ${interface}= | ${node['interfaces']['port1']['name']}

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
| Resource | resources/libraries/robot/honeycomb/persistence.robot
| Resource | resources/libraries/robot/honeycomb/interfaces.robot
| Resource | resources/libraries/robot/honeycomb/bridge_domain.robot
| Resource | resources/libraries/robot/honeycomb/l2_fib.robot
| ...
| Suite Setup | Run Keywords
| ... | Configure Persistence | ${node} | enable | AND
| ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| ...
| Suite Teardown | Configure Persistence | ${node} | disable
| ...
| Force Tags | HC_PERSIST | HC_REST_ONLY
| ...
| Documentation | *Honeycomb configuration persistence test suite.*

*** Test Cases ***
# multi-feature cases
# ===================
| TC01: Honeycomb persists configuration through restart of both Honeycomb and VPP
| | [Documentation] | Checks if Honeycomb maintains configuration after both\
| | ... | Restart Honeycomb and VPP.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Multi-Feature Persistence test configuration | ${node} | ${interface}
| | And Multi-Feature persistence Test Verification | ${node} | ${interface}
| | And Log persisted configuration on node | ${node}
| | When Restart Honeycomb and VPP in pesistence test | ${node}
| | Then Multi-Feature persistence Test Verification | ${node} | ${interface}

| TC02: Honeycomb reverts to defaults if persistence files are invalid
| | [Documentation] | Checks if Honeycomb reverts to default configuration when\
| | ... | persistence files are damaged or invalid.
| | ...
| | [Tags] | HC_FUNC
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Multi-Feature Persistence test configuration | ${node} | ${interface}
| | And Multi-Feature persistence Test Verification | ${node} | ${interface}
| | When Persistence file is damaged during restart | ${node}
| | Then Honeycomb and VPP should have default configuration | ${node}

| TC03: Honeycomb persists configuration through restart of Honeycomb
| | [Documentation] | Checks if Honeycomb maintains configuration after it\
| | ... | is restarted.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Multi-Feature Persistence test configuration | ${node} | ${interface}
| | And Multi-Feature persistence Test Verification | ${node} | ${interface}
| | And Log persisted configuration on node | ${node}
| | When Restart Honeycomb | ${node}
| | Then Multi-Feature persistence Test Verification | ${node} | ${interface}

| TC04: Honeycomb persists configuration through restart of VPP
| | [Documentation] | Checks if Honeycomb updates VPP settings after VPP is\
| | ... | restarted.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Multi-Feature Persistence test configuration | ${node} | ${interface}
| | And Multi-Feature persistence Test Verification | ${node} | ${interface}
| | And Log persisted configuration on node | ${node}
| | When Restart VPP | ${node}
| | Then Multi-Feature persistence Test Verification | ${node} | ${interface}

# single-feature cases
# ====================

| TC05: Persist configuration of IP addresses and neighbors - HC and VPP restart
| | [Documentation] | Verify persistence of interface state, IPv4 address
| | ... | and neighbor entries through restart of both Honeycomb and VPP.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Interface Persistence Setup | ${node}
| | And Interface Persistence Check | ${node}
| | When Restart Honeycomb and VPP in pesistence test | ${node}
| | Then Interface Persistence Check | ${node}

| TC06: Persist configuration of IP addresses and neighbors - HC restart
| | [Documentation] | Verify persistence of interface state, IPv4 address
| | ... | and neighbor entries through restart of Honeycomb.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Interface Persistence Setup | ${node}
| | And Interface Persistence Check | ${node}
| | When Restart Honeycomb | ${node}
| | Then Interface Persistence Check | ${node}

| TC07: Persist configuration of IP addresses and neighbors - VPP restart
| | [Documentation] | Verify persistence of interface state, IPv4 address
| | ... | and neighbor entries through restart of VPP.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Interface Persistence Setup | ${node}
| | And Interface Persistence Check | ${node}
| | When Restart VPP | ${node}
| | Then Interface Persistence Check | ${node}

| TC08: Honeycomb persists configuration of bridge domains - HC and VPP restart
| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry
| | ... | and Bridge domain Operational Interface Assignment through restart
| | ... | of both Honeycomb and VPP.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Bridge Domain Persistence Setup | ${node}
| | When Restart Honeycomb and VPP in pesistence test | ${node}
| | Then Bridge Domain Persistence Check | ${node}

| TC09: Honeycomb persists configuration of bridge domains - HC restart
| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry
| | ... | and Bridge domain Operational Interface Assignment through restart
| | ... | of Honeycomb.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Bridge Domain Persistence Setup | ${node}
| | When Restart Honeycomb | ${node}
| | Then Bridge Domain Persistence Check | ${node}

| TC10: Honeycomb persists configuration of bridge domains - VPP restart
| | [Documentation] | Verify persistence of bridge domain, L2-FIB entry
| | ... | and Bridge domain Operational Interface Assignment through restart
| | ... | of VPP.
| | ...
| | [Teardown]
| | ... | Restart Honeycomb And VPP And Clear Persisted Configuration | ${node}
| | ...
| | Given Bridge Domain Persistence Setup | ${node}
| | When Restart VPP | ${node}
| | Then Bridge Domain Persistence Check | ${node}

#TODO: All other features