2 Documentation Test suite for SFC Service Functions, Operates functions from Restconf APIs.
4 Suite Teardown Delete All Sessions
7 Library OperatingSystem
8 Library RequestsLibrary
9 Library HttpLibrary.HTTP
10 Resource ../../../variables/sfc/Variables.robot
11 Resource ../../../libraries/SFC/SfcKeywords.robot
12 Resource ../../../libraries/Utils.robot
13 Resource ../../../libraries/TemplatedRequests.robot
16 Basic Environment Setup Tests
17 [Documentation] Prepare Basic Test Environment
18 Add Elements To URI From File ${SERVICE_FORWARDERS_URI} ${SERVICE_FORWARDERS_FILE}
19 Add Elements To URI From File ${SERVICE_NODES_URI} ${SERVICE_NODES_FILE}
20 Add Elements To URI From File ${SERVICE_FUNCTIONS_URI} ${SERVICE_FUNCTIONS_FILE}
21 Wait Until Keyword Succeeds 60s 2s Check Service Function Types Added ${SERVICE_FUNCTION_NAMES}
22 Add Elements To URI From File ${SERVICE_CHAINS_URI} ${SERVICE_CHAINS_FILE}
23 Add Elements To URI From File ${SERVICE_FUNCTION_PATHS_URI} ${SERVICE_FUNCTION_PATHS_FILE}
25 Create and Get Rendered Service Path
26 [Documentation] Create and Get Rendered Service Path Through RESTConf APIs
27 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
28 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}
29 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
30 ${elements}= Create List "name":"SFC1-100-RSP-1" "parent-service-function-path":"SFC1-100" "hop-number":0 "service-index":255 "hop-number":1
31 ... "service-index":254 "hop-number":2 "service-index":253
32 Check For Elements At URI ${OPERATIONAL_RSPS_URI} ${elements}
34 Create Get Rendered Service Path Failure
35 [Documentation] Create Rendered Service Path Failure Cases
36 ${resp} RequestsLibrary.Post Request session ${OPERATIONS_CREATE_RSP_URI} data=${CREATE_RSP_FAILURE_INPUT} headers=${headers}
37 Should Be Equal As Strings ${resp.status_code} 500
39 Get Rendered Service Path By Name
40 [Documentation] Get Rendered Service Path By Name Through RESTConf APIs
41 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
42 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1
43 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
44 ${elements}= Create List "name":"SFC1-100-RSP-1" "parent-service-function-path":"SFC1-100" "hop-number":0 "service-index":255 "hop-number":1
45 ... "service-index":254 "hop-number":2 "service-index":253
46 Check For Elements At URI ${OPERATIONAL_RSPS_URI} ${elements}
48 Get Non Existing Rendered Service Path
49 [Documentation] Get Non Existing Rendered Service Path Through RESTConf APIs
50 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
51 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/non-existing-rsp
52 Should Be Equal As Strings ${resp.status_code} 404
53 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}
54 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
55 Should Not Contain ${resp.content} non-existing-rsp
57 Delete one Rendered Service Path By Name
58 [Documentation] Delete One Rendered Service Path By Name Through RESTConf APIs
59 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
60 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1
61 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
62 Should Contain ${resp.content} "name":"SFC1-100-RSP-1"
63 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP1_INPUT}
64 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1
65 Should Be Equal As Strings ${resp.status_code} 404
66 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}
67 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
68 Should Not Contain ${resp.content} "name":"SFC1-100-RSP-1"
70 Delete Non Existing Rendered Service Path By Name
71 [Documentation] Delete One Rendered Service Path By Name Through RESTConf APIs
72 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
73 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1
74 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
75 Should Contain ${resp.content} "name":"SFC1-100-RSP-1"
76 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP2_INPUT}
77 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}
78 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
79 Should Not Contain ${resp.content} {"rendered-service-paths":{}}
81 Get Rendered Service Path Hop
82 [Documentation] Get Rendered Service Path By Name Through RESTConf APIs
83 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
84 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/
85 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
86 ${elements}= Create List "hop-number":0 "service-index":255 "service-function-name":"dpi
87 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/ ${elements}
88 ${elements}= Create List "hop-number":1 "service-index":254 "service-function-name":"napt44
89 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/1/ ${elements}
90 ${elements}= Create List "hop-number":2 "service-index":253 "service-function-name":"firewall
91 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/2/ ${elements}
92 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/3/
93 Should Be Equal As Strings ${resp.status_code} 404
94 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP1_INPUT}
96 Generate RSPs with Random Schedule Algorithm type
97 [Documentation] Generate RSPs with Random Schedule Algorithm type Through RESTConf APIs
98 Remove All Elements At URI ${SERVICE_SCHED_TYPES_URI}
99 Add Elements To URI From File ${SERVICE_RANDOM_SCHED_TYPE_URI} ${SERVICE_RANDOM_SCHED_TYPE_FILE}
100 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
101 ${elements}= Create List "hop-number":0 "service-index":255 "service-function-name":"dpi
102 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/ ${elements}
103 ${elements}= Create List "hop-number":1 "service-index":254 "service-function-name":"napt44
104 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/1/ ${elements}
105 ${elements}= Create List "hop-number":2 "service-index":253 "service-function-name":"firewall
106 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/2/ ${elements}
107 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP2_INPUT}
108 ${elements}= Create List "hop-number":0 "service-index":255 "service-function-name":"dpi
109 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/0/ ${elements}
110 ${elements}= Create List "hop-number":1 "service-index":254 "service-function-name":"napt44
111 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/1/ ${elements}
112 ${elements}= Create List "hop-number":2 "service-index":253 "service-function-name":"firewall
113 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/2/ ${elements}
114 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP1_INPUT}
115 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP2_INPUT}
117 Generate RSPs with Round Robin Schedule Algorithm type
118 [Documentation] Generate RSPs with Round Robin Schedule Algorithm type
120 Remove All Elements At URI ${SERVICE_SCHED_TYPES_URI}
121 Add Elements To URI From File ${SERVICE_ROUNDROBIN_SCHED_TYPE_URI} ${SERVICE_ROUNDROBIN_SCHED_TYPE_FILE}
122 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
123 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP2_INPUT}
124 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP3_INPUT}
125 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP4_INPUT}
126 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP5_INPUT}
127 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP6_INPUT}
128 ${path1_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/
129 ${path1_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/1/
130 ${path1_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/2/
131 ${path2_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/0/
132 ${path2_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/1/
133 ${path2_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/2/
134 ${path3_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-3/rendered-service-path-hop/0/
135 ${path3_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-3/rendered-service-path-hop/1/
136 ${path3_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-3/rendered-service-path-hop/2/
137 ${path4_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-4/rendered-service-path-hop/0/
138 ${path4_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-4/rendered-service-path-hop/1/
139 ${path4_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-4/rendered-service-path-hop/2/
140 ${path5_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-5/rendered-service-path-hop/0/
141 ${path5_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-5/rendered-service-path-hop/1/
142 ${path5_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-5/rendered-service-path-hop/2/
143 ${path6_hop0} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-6/rendered-service-path-hop/0/
144 ${path6_hop1} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-6/rendered-service-path-hop/1/
145 ${path6_hop2} Get JSON Elements From URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-6/rendered-service-path-hop/2/
146 Should Be Equal ${path1_hop0} ${path4_hop0}
147 Should Not Be Equal ${path1_hop0} ${path2_hop0}
148 Should Be Equal ${path1_hop1} ${path4_hop1}
149 Should Not Be Equal ${path1_hop1} ${path2_hop1}
150 Should Be Equal ${path1_hop2} ${path4_hop2}
151 Should Not Be Equal ${path1_hop2} ${path2_hop2}
152 Should Be Equal ${path2_hop0} ${path5_hop0}
153 Should Not Be Equal ${path2_hop0} ${path3_hop0}
154 Should Be Equal ${path2_hop1} ${path5_hop1}
155 Should Not Be Equal ${path2_hop1} ${path3_hop1}
156 Should Be Equal ${path2_hop2} ${path5_hop2}
157 Should Not Be Equal ${path2_hop2} ${path3_hop2}
158 Should Be Equal ${path3_hop0} ${path6_hop0}
159 Should Not Be Equal ${path3_hop0} ${path1_hop0}
160 Should Be Equal ${path3_hop1} ${path6_hop1}
161 Should Not Be Equal ${path3_hop1} ${path1_hop1}
162 Should Be Equal ${path3_hop2} ${path6_hop2}
163 Should Not Be Equal ${path3_hop2} ${path1_hop2}
164 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP1_INPUT}
165 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP2_INPUT}
166 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP3_INPUT}
167 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP4_INPUT}
168 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP5_INPUT}
169 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP6_INPUT}
171 Generate RSPs with Shortest Path Schedule Algorithm type
172 [Documentation] Generate RSPs with Shortest Path Schedule Algorithm type Through RESTConf APIs
173 Remove All Elements At URI ${SERVICE_SCHED_TYPES_URI}
174 Add Elements To URI From File ${SERVICE_SHORTESTPATH_SCHED_TYPE_URI} ${SERVICE_SHORTESTPATH_SCHED_TYPE_FILE}
175 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP1_INPUT}
176 ${elements}= Create List "hop-number":0 "service-index":255 "service-function-name":"dpi-1
177 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/ ${elements}
178 ${elements}= Create List "hop-number":1 "service-index":254 "service-function-name":"napt44
179 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/1/ ${elements}
180 ${elements}= Create List "hop-number":2 "service-index":253 "service-function-name":"firewall
181 Check For Elements At URI ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/2/ ${elements}
182 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/0/
183 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
184 ${fwd_hop1} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
185 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/1/
186 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
187 ${fwd_hop2} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
188 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-1/rendered-service-path-hop/2/
189 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
190 ${fwd_hop3} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
191 Should Be Equal ${fwd_hop1} ${fwd_hop2}
192 Should Be Equal ${fwd_hop2} ${fwd_hop3}
193 Post Elements To URI As JSON ${OPERATIONS_CREATE_RSP_URI} ${CREATE_RSP2_INPUT}
194 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/0/
195 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
196 ${fwd_hop1} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
197 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/1/
198 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
199 ${fwd_hop2} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
200 ${resp} RequestsLibrary.Get Request session ${OPERATIONAL_RSPS_URI}rendered-service-path/SFC1-100-RSP-2/rendered-service-path-hop/2/
201 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
202 ${fwd_hop3} Extract Value From Content ${resp.content} /rendered-service-path-hop/0/service-function-forwarder
203 Should Be Equal ${fwd_hop1} ${fwd_hop2}
204 Should Be Equal ${fwd_hop2} ${fwd_hop3}
205 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP1_INPUT}
206 Post Elements To URI As JSON ${OPERATIONS_DELETE_RSP_URI} ${DELETE_RSP2_INPUT}
208 Clean Datastore After Tests
209 [Documentation] Clean All Items In Datastore After Tests
210 Remove All Elements At URI ${SERVICE_FUNCTIONS_URI}
211 Wait Until Keyword Succeeds 60s 2s Check Service Function Types Removed ${SERVICE_FUNCTION_NAMES}
212 Remove All Elements At URI ${SERVICE_FORWARDERS_URI}
213 Remove All Elements At URI ${SERVICE_NODES_URI}
214 Remove All Elements At URI ${SERVICE_CHAINS_URI}
215 Remove All Elements At URI ${SERVICE_SCHED_TYPES_URI}
216 Remove All Elements At URI ${SERVICE_FUNCTION_PATHS_URI}
219 Post Elements To URI As JSON
220 [Arguments] ${uri} ${data}
221 ${resp} RequestsLibrary.Post Request session ${uri} data=${data} headers=${headers}
222 Should Contain ${ALLOWED_STATUS_CODES} ${resp.status_code}
224 Get JSON Elements From URI
226 ${resp} RequestsLibrary.Get Request session ${uri}
227 ${value} To Json ${resp.content}
231 [Documentation] Create session and initialize ODL version specific variables
232 Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
234 Set Suite Variable ${VERSION_DIR} master
235 Set Suite Variable ${SERVICE_FUNCTIONS_URI} /restconf/config/service-function:service-functions/
236 Set Suite Variable ${SERVICE_FUNCTIONS_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-functions.json
237 Set Suite Variable @{SERVICE_FUNCTION_NAMES} "napt44-103-2" "napt44-103-1" "dpi-102-2" "firewall-101-2" "napt44-104"
238 ... "dpi-102-1" "firewall-104" "dpi-102-3" "firewall-101-1"
239 Set Suite Variable ${SERVICE_FORWARDERS_URI} /restconf/config/service-function-forwarder:service-function-forwarders/
240 Set Suite Variable ${SERVICE_FORWARDERS_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-forwarders.json
241 Set Suite Variable ${SERVICE_NODES_URI} /restconf/config/service-node:service-nodes/
242 Set Suite Variable ${SERVICE_NODES_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-nodes.json
243 Set Suite Variable ${SERVICE_CHAINS_URI} /restconf/config/service-function-chain:service-function-chains/
244 Set Suite Variable ${SERVICE_CHAINS_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-chains.json
245 Set Suite Variable ${SERVICE_FUNCTION_PATHS_URI} /restconf/config/service-function-path:service-function-paths/
246 Set Suite Variable ${SERVICE_FUNCTION_PATHS_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-paths.json
247 Set Suite Variable ${SERVICE_SCHED_TYPES_URI} /restconf/config/service-function-scheduler-type:service-function-scheduler-types/
248 Set Suite Variable ${SERVICE_SCHED_TYPE_URI_BASE} ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:
249 Set Suite Variable ${SERVICE_RANDOM_SCHED_TYPE_URI} ${SERVICE_SCHED_TYPE_URI_BASE}random
250 Set Suite Variable ${SERVICE_RANDOM_SCHED_TYPE_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-random-schedule-type.json
251 Set Suite Variable ${SERVICE_ROUNDROBIN_SCHED_TYPE_URI} ${SERVICE_SCHED_TYPE_URI_BASE}round-robin
252 Set Suite Variable ${SERVICE_ROUNDROBIN_SCHED_TYPE_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-roundrobin-schedule-type.json
253 Set Suite Variable ${SERVICE_LOADBALANCE_SCHED_TYPE_URI} ${SERVICE_SCHED_TYPE_URI_BASE}load-balance
254 Set Suite Variable ${SERVICE_LOADBALANCE_SCHED_TYPE_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-loadbalance-schedule-type.json
255 Set Suite Variable ${SERVICE_SHORTESTPATH_SCHED_TYPE_URI} ${SERVICE_SCHED_TYPE_URI_BASE}shortest-path
256 Set Suite Variable ${SERVICE_SHORTESTPATH_SCHED_TYPE_FILE} ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-shortestpath-schedule-type.json
257 Set Suite Variable ${RENDERED_SERVICE_PATHS_URI} /restconf/config/rendered-service-path:rendered-service-paths/
258 Set Suite Variable ${OPERATIONAL_RSPS_URI} /restconf/operational/rendered-service-path:rendered-service-paths/
259 Set Suite Variable ${OPERATIONS_CREATE_RSP_URI} /restconf/operations/rendered-service-path:create-rendered-path/
260 Set Suite Variable ${OPERATIONS_DELETE_RSP_URI} /restconf/operations/rendered-service-path:delete-rendered-path
261 Set Suite Variable ${CREATE_RSP1_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-1"}}
262 Set Suite Variable ${CREATE_RSP2_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-2"}}
263 Set Suite Variable ${CREATE_RSP3_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-3"}}
264 Set Suite Variable ${CREATE_RSP4_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-4"}}
265 Set Suite Variable ${CREATE_RSP5_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-5"}}
266 Set Suite Variable ${CREATE_RSP6_INPUT} {"input":{"parent-service-function-path":"SFC1-100","name":"SFC1-100-RSP-6"}}
267 Set Suite Variable ${CREATE_RSP_FAILURE_INPUT} {"input":{"parent-service-function-path":"SFC1-empty","name":"SFC1-empty-Path-1"}}
268 Set Suite Variable ${DELETE_RSP1_INPUT} {"input":{"name":"SFC1-100-RSP-1"}}
269 Set Suite Variable ${DELETE_RSP2_INPUT} {"input":{"name":"SFC1-100-RSP-2"}}
270 Set Suite Variable ${DELETE_RSP3_INPUT} {"input":{"name":"SFC1-100-RSP-3"}}
271 Set Suite Variable ${DELETE_RSP4_INPUT} {"input":{"name":"SFC1-100-RSP-4"}}
272 Set Suite Variable ${DELETE_RSP5_INPUT} {"input":{"name":"SFC1-100-RSP-5"}}
273 Set Suite Variable ${DELETE_RSP6_INPUT} {"input":{"name":"SFC1-100-RSP-6"}}