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 == 'inProgress'
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 == 'inProgress'
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 == 'inProgress'
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 == 'inProgress'
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 == 'inProgress'
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 == 'inProgress'
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 : 'inProgress'}
365 And match $ == '#[1]'
366 Given path 'serviceOrder',serviceOrderId15
369 And match $ contains '#notnull'
370 Given path 'serviceOrder',serviceOrderId15
373 Given path 'serviceOrder',serviceOrderId16
377 Scenario: testCheckServiceOrderWithTargetHeader
378 Given path 'serviceOrder'
379 And header Target = 'http://localhost:8080/nbi/api/v4'
383 And match $.id contains '#notnull'
384 And match $.state == 'acknowledged'
385 And def serviceOrderId = $.id
386 Given path 'serviceOrder',serviceOrderId
387 And header Target = 'http://localhost:8080/nbi/api/v4'
391 Scenario: testCheckServiceOrderWithCustomerAAINotResponding
392 * call Context.removeWireMockMapping("/aai/v14/business/customers/customer/new");
393 Given path 'serviceOrder'
397 And def serviceOrderId = $.id
398 Given path 'serviceOrder','test',serviceOrderId
402 And match $.id == serviceOrderId
403 And match $.state == 'rejected'
404 And match $.orderItem == '#[2]'
405 And match $.orderMessage[0] contains { code : '501' , messageInformation : 'Problem with AAI API' }
406 Given path 'serviceOrder',serviceOrderId
409 * call Context.startServers();
412 Scenario: testAAIPutServiceNotResponding
413 * call Context.removeWireMockMapping("/aai/v14/business/customers/customer/new/service-subscriptions/service-subscription/vFW");
414 Given path 'serviceOrder'
418 And def serviceOrderId = $.id
419 Given path 'serviceOrder','test',serviceOrderId
423 And match $.id == serviceOrderId
424 And match $.state == 'rejected'
425 Given path 'serviceOrder',serviceOrderId
428 * call Context.startServers();
432 Scenario: testCheckServiceOrderWithSDCNotResponding
433 * call Context.removeWireMockMapping("/sdc/v1/catalog/services/1e3feeb0-8e36-46c6-862c-236d9c626439/metadata");
434 Given path 'serviceOrder'
438 And def serviceOrderId = $.id
439 Given path 'serviceOrder','test',serviceOrderId
443 And match $.id == serviceOrderId
444 And match $.state == 'rejected'
445 And match $.orderItem[0].orderMessage[0] contains { code : '102' , field : 'serviceSpecification.id' }
446 Given path 'serviceOrder',serviceOrderId
449 * call Context.startServers();
451 Scenario: testCheckServiceOrderWithSDCNotRespondingWithoutWiremock
452 * call Context.stopWiremock();
453 Given path 'serviceOrder'
457 And def serviceOrderId = $.id
458 Given path 'serviceOrder','test',serviceOrderId
462 And match $.id == serviceOrderId
463 And match $.state == 'rejected'
464 And match $.orderMessage[0] contains { code : '500' , messageInformation : 'Problem with SDC API' }
465 Given path 'serviceOrder',serviceOrderId
468 * call Context.startServers();
470 Scenario: testCheckServiceOrderNoOwningEntities
471 * call Context.removeWireMockMapping("/aai/v14/business/owning-entities");
472 Given path 'serviceOrder'
476 And def serviceOrderId = $.id
477 Given path 'serviceOrder','test',serviceOrderId
481 And match $.state == 'inProgress'
482 Given path 'serviceOrder',serviceOrderId
485 Given path 'serviceOrder',serviceOrderId
488 * call Context.startServers();