1 # Copyright (c) 2018 Orange
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.swagger: "2.0"
18 Feature: Service order
22 * def Context = Java.type('org.onap.nbi.test.Context');
23 * call Context.startServers();
24 * def data = read('../data/serviceOrder.json')
25 * def sleep = function(){java.lang.Thread.sleep(5000)}
28 Scenario: testCreateServiceOrderResource
29 Given path 'serviceOrder'
33 And match $.id contains '#notnull'
34 And match $.state == 'acknowledged'
35 And def serviceOrderId = $.id
36 Given path 'serviceOrder',serviceOrderId
40 Scenario: testCheckServiceOrder
41 Given path 'serviceOrder'
45 And def serviceOrderId = $.id
46 Given path 'serviceOrder','test',serviceOrderId
50 And match $.id == serviceOrderId
51 And match $.state == 'acknowledged'
52 Given path 'serviceOrder',serviceOrderId
55 Given path 'serviceOrder',serviceOrderId
60 Scenario: testCheckServiceOrderWithUnknownSverviceSpecId
61 Given path 'serviceOrder'
65 And def serviceOrderId = $.id
66 Given path 'serviceOrder','test',serviceOrderId
70 And match $.state == 'rejected'
71 And match $.orderItem[0].orderItemMessage == '#[1]'
72 And match $.orderItem[0].orderItemMessage[0] contains { code : '102' , field : 'serviceSpecification.id' }
73 Given path 'serviceOrder',serviceOrderId
76 Given path 'serviceOrder',serviceOrderId
81 Scenario: testCheckServiceOrderWithGenericCustomer
82 Given path 'serviceOrder'
86 And def serviceOrderId = $.id
87 Given path 'serviceOrder','test',serviceOrderId
91 And match $.state == 'acknowledged'
92 Given path 'serviceOrder',serviceOrderId
95 Given path 'serviceOrder',serviceOrderId
99 Scenario: testCheckServiceOrderWithoutRelatedParty
100 Given path 'serviceOrder'
104 And def serviceOrderId = $.id
105 Given path 'serviceOrder','test',serviceOrderId
109 And match $.state == 'acknowledged'
110 Given path 'serviceOrder',serviceOrderId
113 Given path 'serviceOrder',serviceOrderId
118 Scenario: testCheckServiceOrderWithUnKnownCustomer
119 Given path 'serviceOrder'
123 And def serviceOrderId = $.id
124 Given path 'serviceOrder','test',serviceOrderId
128 And match $.state == 'acknowledged'
129 Given path 'serviceOrder',serviceOrderId
132 Given path 'serviceOrder',serviceOrderId
136 Scenario: testCheckServiceOrderInDeleteWithNoServiceId
137 Given path 'serviceOrder'
141 And def serviceOrderId = $.id
142 Given path 'serviceOrder','test',serviceOrderId
146 And match $.state == 'rejected'
147 And match $.orderItem[0].orderItemMessage == '#[1]'
148 And match $.orderItem[0].orderItemMessage[0] contains { code : '106' , field : 'service.id' }
149 Given path 'serviceOrder',serviceOrderId
152 Given path 'serviceOrder',serviceOrderId
157 Scenario: testCheckServiceOrderInModifyWithNoServiceId
158 Given path 'serviceOrder'
162 And def serviceOrderId = $.id
163 Given path 'serviceOrder','test',serviceOrderId
167 And match $.state == 'rejected'
168 And match $.orderItem[0].orderItemMessage == '#[1]'
169 And match $.orderItem[0].orderItemMessage[0] contains { code : '106' , field : 'service.id' }
170 Given path 'serviceOrder',serviceOrderId
173 Given path 'serviceOrder',serviceOrderId
178 Scenario: testCheckServiceOrderInAddWithServiceId
179 Given path 'serviceOrder'
183 And def serviceOrderId = $.id
184 Given path 'serviceOrder','test',serviceOrderId
188 And match $.state == 'rejected'
189 And match $.orderItem[0].orderItemMessage == '#[1]'
190 And match $.orderItem[0].orderItemMessage[0] contains { code : '103' , field : 'service.id' }
191 Given path 'serviceOrder',serviceOrderId
194 Given path 'serviceOrder',serviceOrderId
198 Scenario: testCheckServiceOrderWithUnKnownCustomerInChange
199 Given path 'serviceOrder'
203 And def serviceOrderId = $.id
204 Given path 'serviceOrder','test',serviceOrderId
208 And match $.state == 'rejected'
209 And match $.orderMessage == '#[1]'
210 And match $.orderMessage[0] contains { code : '104' , field : 'relatedParty.id' }
211 Given path 'serviceOrder',serviceOrderId
214 Given path 'serviceOrder',serviceOrderId
219 Scenario: testCheckServiceOrderDelete
220 Given path 'serviceOrder'
224 And def serviceOrderId = $.id
225 Given path 'serviceOrder','test',serviceOrderId
229 And match $.state == 'acknowledged'
230 Given path 'serviceOrder',serviceOrderId
233 Given path 'serviceOrder',serviceOrderId
237 Scenario: testCheckServiceOrderDeleteRejected
238 Given path 'serviceOrder'
242 And def serviceOrderId = $.id
243 Given path 'serviceOrder','test',serviceOrderId
247 And match $.state == 'rejected'
248 And match $.orderItem[0].orderItemMessage == '#[1]'
249 And match $.orderItem[0].orderItemMessage[0] contains { code : '106' , field : 'service.id' }
250 Given path 'serviceOrder',serviceOrderId
253 Given path 'serviceOrder',serviceOrderId
257 Scenario: testCheckServiceOrderNoChange
258 Given path 'serviceOrder'
262 And def serviceOrderId = $.id
263 Given path 'serviceOrder','test',serviceOrderId
267 And match $.state == 'completed'
268 And match $.orderItem[0].state == 'completed'
269 And match $.orderItem[1].state == 'completed'
270 Given path 'serviceOrder',serviceOrderId
273 Given path 'serviceOrder',serviceOrderId
277 Scenario: testCheckServiceOrderNoChangeAndDelete
278 Given path 'serviceOrder'
282 And def serviceOrderId = $.id
283 Given path 'serviceOrder','test',serviceOrderId
287 And match $.state == 'acknowledged'
288 And match $.orderItem[0].state == 'completed'
289 Given path 'serviceOrder',serviceOrderId
292 Given path 'serviceOrder',serviceOrderId
296 Scenario: testCheckServiceOrderDeleteWithKoServiceSpecId
297 Given path 'serviceOrder'
301 And def serviceOrderId = $.id
302 Given path 'serviceOrder','test',serviceOrderId
306 And match $.state == 'rejected'
307 And match $.orderItem[0].state == 'rejected'
308 Given path 'serviceOrder',serviceOrderId
311 Given path 'serviceOrder',serviceOrderId
315 Scenario: testCheckServiceOrderRejected
316 Given path 'serviceOrder'
320 And def serviceOrderId = $.id
321 Given path 'serviceOrder','test',serviceOrderId
325 And match $.state == 'rejected'
326 And match $.orderItem[0].orderItemMessage == '#[1]'
327 And match $.orderItem[0].orderItemMessage[0] contains { code : '102' , field : 'serviceSpecification.id' }
328 Given path 'serviceOrder',serviceOrderId
331 Given path 'serviceOrder',serviceOrderId
336 Scenario: testFindAndGetServiceOrder
337 Given path 'serviceOrder'
341 And def serviceOrderId15 = $.id
342 Given path 'serviceOrder'
346 And def serviceOrderId16 = $.id
347 Given path 'serviceOrder','test',serviceOrderId15
351 Given path 'serviceOrder','test',serviceOrderId16
355 Given path 'serviceOrder'
356 And params {fields : 'id'}
359 And match $ == '#[2]'
360 Given path 'serviceOrder'
361 And params {externalId : 'extid1' , state : 'acknowledged'}
364 And match $ == '#[1]'
365 Given path 'serviceOrder',serviceOrderId15
368 And match $ contains '#notnull'
369 Given path 'serviceOrder',serviceOrderId15
372 Given path 'serviceOrder',serviceOrderId16
376 Scenario: testCheckServiceOrderWithTargetHeader
377 Given path 'serviceOrder'
378 And header Target = 'http://localhost:8080/nbi/api/v4'
382 And match $.id contains '#notnull'
383 And match $.state == 'acknowledged'
384 And def serviceOrderId = $.id
385 Given path 'serviceOrder',serviceOrderId
386 And header Target = 'http://localhost:8080/nbi/api/v4'
390 Scenario: testCheckServiceOrderWithCustomerAAINotResponding
391 * call Context.removeWireMockMapping("/aai/v14/business/customers/customer/new");
392 Given path 'serviceOrder'
396 And def serviceOrderId = $.id
397 Given path 'serviceOrder','test',serviceOrderId
401 And match $.id == serviceOrderId
402 And match $.state == 'rejected'
403 And match $.orderItem == '#[2]'
404 And match $.orderMessage[0] contains { code : '501' , messageInformation : 'Problem with AAI API' }
405 Given path 'serviceOrder',serviceOrderId
408 * call Context.startServers();
411 Scenario: testAAIPutServiceNotResponding
412 * call Context.removeWireMockMapping("/aai/v14/business/customers/customer/new/service-subscriptions/service-subscription/vFW");
413 Given path 'serviceOrder'
417 And def serviceOrderId = $.id
418 Given path 'serviceOrder','test',serviceOrderId
422 And match $.id == serviceOrderId
423 And match $.state == 'rejected'
424 Given path 'serviceOrder',serviceOrderId
427 * call Context.startServers();
429 Scenario: testCheckServiceOrderWithSDCNotResponding
430 * call Context.removeWireMockMapping("/sdc/v1/catalog/services/1e3feeb0-8e36-46c6-862c-236d9c626439/metadata");
431 Given path 'serviceOrder'
435 And def serviceOrderId = $.id
436 Given path 'serviceOrder','test',serviceOrderId
440 And match $.id == serviceOrderId
441 And match $.state == 'rejected'
442 And match $.orderItem[0].orderMessage[0] contains { code : '102' , field : 'serviceSpecification.id' }
443 Given path 'serviceOrder',serviceOrderId
446 * call Context.startServers();
448 Scenario: testCheckServiceOrderWithSDCNotRespondingWithoutWiremock
449 * call Context.stopWiremock();
450 Given path 'serviceOrder'
454 And def serviceOrderId = $.id
455 Given path 'serviceOrder','test',serviceOrderId
459 And match $.id == serviceOrderId
460 And match $.state == 'rejected'
461 And match $.orderMessage[0] contains { code : '500' , messageInformation : 'Problem with SDC API' }
462 Given path 'serviceOrder',serviceOrderId
465 * call Context.startServers();