2 * Copyright (c) 2018 Orange
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5 * in compliance with the License. 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 distributed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11 * or implied. See the License for the specific language governing permissions and limitations under
14 package org.onap.nbi.test;
17 import static org.assertj.core.api.Assertions.assertThat;
18 import java.util.Calendar;
19 import java.util.Date;
20 import java.util.List;
21 import java.util.Optional;
22 import javax.validation.Validation;
23 import javax.validation.Validator;
24 import javax.validation.ValidatorFactory;
25 import org.junit.After;
26 import org.junit.AfterClass;
27 import org.junit.Before;
28 import org.junit.BeforeClass;
29 import org.junit.Test;
30 import org.junit.runner.RunWith;
31 import org.onap.nbi.apis.assertions.ServiceOrderExecutionTaskAssertions;
32 import org.onap.nbi.apis.serviceorder.model.ActionType;
33 import org.onap.nbi.apis.serviceorder.model.ServiceOrder;
34 import org.onap.nbi.apis.serviceorder.model.ServiceOrderItem;
35 import org.onap.nbi.apis.serviceorder.model.StateType;
36 import org.onap.nbi.apis.serviceorder.model.orchestrator.ExecutionTask;
37 import org.onap.nbi.apis.serviceorder.repositories.ExecutionTaskRepository;
38 import org.onap.nbi.apis.serviceorder.repositories.ServiceOrderRepository;
39 import org.onap.nbi.apis.serviceorder.workflow.SOTaskProcessor;
40 import org.springframework.beans.factory.annotation.Autowired;
41 import org.springframework.boot.test.context.SpringBootTest;
42 import org.springframework.mock.web.MockHttpServletRequest;
43 import org.springframework.test.annotation.DirtiesContext;
44 import org.springframework.test.annotation.DirtiesContext.ClassMode;
45 import org.springframework.test.context.ActiveProfiles;
46 import org.springframework.test.context.junit4.SpringRunner;
47 import org.springframework.web.context.request.RequestContextHolder;
48 import org.springframework.web.context.request.ServletRequestAttributes;
49 import com.github.tomakehurst.wiremock.admin.model.ListStubMappingsResult;
50 import com.github.tomakehurst.wiremock.http.ResponseDefinition;
51 import com.github.tomakehurst.wiremock.stubbing.StubMapping;
53 @RunWith(SpringRunner.class)
54 @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
55 @ActiveProfiles("test")
56 @DirtiesContext(classMode = ClassMode.AFTER_CLASS)
57 public class ExecutionTaskTest {
60 ServiceOrderRepository serviceOrderRepository;
63 ExecutionTaskRepository executionTaskRepository;
66 SOTaskProcessor SoTaskProcessor;
69 static Validator validator;
72 public void before() {
73 MockHttpServletRequest request = new MockHttpServletRequest();
74 RequestContextHolder.setRequestAttributes(new ServletRequestAttributes(request));
78 public static void setUp() throws Exception {
79 ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
80 validator = factory.getValidator();
81 Context.startWiremock();
85 public static void tearsDown() throws Exception {
86 Context.stopServers();
91 public void tearsDownUpPort() throws Exception {
92 executionTaskRepository.deleteAll();
93 serviceOrderRepository.deleteAll();
94 Context.wireMockServer.resetToDefaultMappings();
99 public ExecutionTask getExecutionTask(String orderItemId) {
100 for (ExecutionTask executionTask : executionTaskRepository.findAll()) {
101 if (executionTask.getOrderItemId().equalsIgnoreCase(orderItemId)) {
102 return executionTask;
109 private void changeWireMockResponse(String s, int statusCode, String bodyContent) {
110 ListStubMappingsResult listStubMappingsResult = Context.wireMockServer.listAllStubMappings();
111 ResponseDefinition responseDefinition = new ResponseDefinition(statusCode, bodyContent);
112 List<StubMapping> mappings = listStubMappingsResult.getMappings();
113 for (StubMapping mapping : mappings) {
114 if (mapping.getRequest().getUrl().equals(s)) {
115 mapping.setResponse(responseDefinition);
121 private ServiceOrder getServiceOrder(String serviceOrderId) {
122 Optional<ServiceOrder> serviceOrderChecked = serviceOrderRepository.findById(serviceOrderId);
123 return serviceOrderChecked.get();
129 public void testExecutionTaskSuccess() throws Exception {
131 ExecutionTask executionTaskA =
132 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
133 executionTaskRepository, ActionType.ADD);
134 ExecutionTask executionTaskB;
137 SoTaskProcessor.processOrderItem(executionTaskA);
138 ServiceOrder serviceOrderChecked = getServiceOrder("test");
139 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
140 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
141 if (serviceOrderItem.getId().equals("A")) {
142 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
144 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
148 executionTaskB = getExecutionTask("B");
149 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
150 executionTaskA = getExecutionTask("A");
151 assertThat(executionTaskA).isNull();
153 SoTaskProcessor.processOrderItem(executionTaskB);
154 serviceOrderChecked = getServiceOrder("test");
155 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
156 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
157 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
161 assertThat(executionTaskRepository.count()).isEqualTo(0);
168 public void testE2EExecutionTaskSuccess() throws Exception {
170 ExecutionTask executionTaskA =
171 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucess(
172 serviceOrderRepository, executionTaskRepository, ActionType.ADD);
173 ExecutionTask executionTaskB;
176 SoTaskProcessor.processOrderItem(executionTaskA);
177 ServiceOrder serviceOrderChecked = getServiceOrder("test");
178 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
179 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
180 if (serviceOrderItem.getId().equals("A")) {
181 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
183 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
187 executionTaskB = getExecutionTask("B");
188 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
189 executionTaskA = getExecutionTask("A");
190 assertThat(executionTaskA).isNull();
192 SoTaskProcessor.processOrderItem(executionTaskB);
193 serviceOrderChecked = getServiceOrder("test");
194 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
195 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
196 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
200 assertThat(executionTaskRepository.count()).isEqualTo(0);
207 public void testE2EExecutionTaskSuccessWithObject() throws Exception {
209 ExecutionTask executionTaskA =
210 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucessWithObject(
211 serviceOrderRepository, executionTaskRepository, ActionType.ADD);
212 ExecutionTask executionTaskB;
215 SoTaskProcessor.processOrderItem(executionTaskA);
216 ServiceOrder serviceOrderChecked = getServiceOrder("test");
217 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
218 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
219 if (serviceOrderItem.getId().equals("A")) {
220 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
222 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
226 executionTaskB = getExecutionTask("B");
227 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
228 executionTaskA = getExecutionTask("A");
229 assertThat(executionTaskA).isNull();
231 SoTaskProcessor.processOrderItem(executionTaskB);
232 serviceOrderChecked = getServiceOrder("test");
233 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
234 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
235 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
239 assertThat(executionTaskRepository.count()).isEqualTo(0);
246 public void testE2EExecutionTaskSuccessWithComplexObject() throws Exception {
247 // A Service Order with complex object including arrays
248 ExecutionTask executionTaskA =
249 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucessWithComplexObject(
250 serviceOrderRepository, executionTaskRepository, ActionType.ADD);
251 ExecutionTask executionTaskB;
254 SoTaskProcessor.processOrderItem(executionTaskA);
255 ServiceOrder serviceOrderChecked = getServiceOrder("test");
256 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
257 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
258 if (serviceOrderItem.getId().equals("A")) {
259 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
261 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
265 executionTaskB = getExecutionTask("B");
266 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
267 executionTaskA = getExecutionTask("A");
268 assertThat(executionTaskA).isNull();
270 SoTaskProcessor.processOrderItem(executionTaskB);
271 serviceOrderChecked = getServiceOrder("test");
272 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
273 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
274 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
278 assertThat(executionTaskRepository.count()).isEqualTo(0);
285 public void testExecutionTaskDeleteSuccess() throws Exception {
287 ExecutionTask executionTaskA =
288 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
289 executionTaskRepository, ActionType.DELETE);
290 ExecutionTask executionTaskB;
293 SoTaskProcessor.processOrderItem(executionTaskA);
294 ServiceOrder serviceOrderChecked = getServiceOrder("test");
295 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
296 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
297 if (serviceOrderItem.getId().equals("A")) {
298 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
300 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
304 executionTaskB = getExecutionTask("B");
305 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
306 executionTaskA = getExecutionTask("A");
307 assertThat(executionTaskA).isNull();
309 SoTaskProcessor.processOrderItem(executionTaskB);
310 serviceOrderChecked = getServiceOrder("test");
311 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
312 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
313 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
317 assertThat(executionTaskRepository.count()).isEqualTo(0);
324 public void testE2EExecutionTaskDeleteSuccess() throws Exception {
326 ExecutionTask executionTaskA =
327 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucess(
328 serviceOrderRepository, executionTaskRepository, ActionType.DELETE);
329 ExecutionTask executionTaskB;
332 SoTaskProcessor.processOrderItem(executionTaskA);
333 ServiceOrder serviceOrderChecked = getServiceOrder("test");
334 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
335 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
336 if (serviceOrderItem.getId().equals("A")) {
337 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
339 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
343 executionTaskB = getExecutionTask("B");
344 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
345 executionTaskA = getExecutionTask("A");
346 assertThat(executionTaskA).isNull();
348 SoTaskProcessor.processOrderItem(executionTaskB);
349 serviceOrderChecked = getServiceOrder("test");
350 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
351 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
352 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
356 assertThat(executionTaskRepository.count()).isEqualTo(0);
364 public void testExecutionTaskFailed() throws Exception {
366 ExecutionTask executionTaskA =
367 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
368 executionTaskRepository, ActionType.ADD);
370 Context.removeWireMockMapping("/onap/so/infra/orchestrationRequests/v7/requestId");
373 SoTaskProcessor.processOrderItem(executionTaskA);
374 ServiceOrder serviceOrderChecked = getServiceOrder("test");
375 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
376 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
377 if (serviceOrderItem.getId().equals("A")) {
378 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.INPROGRESS);
380 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
383 executionTaskA = getExecutionTask("A");
384 Date createDate = executionTaskA.getCreateDate();
385 assertThat(executionTaskA.getLastAttemptDate().getTime() > createDate.getTime()).isTrue();
387 changeCreationDate(executionTaskA);
388 SoTaskProcessor.processOrderItem(executionTaskA);
390 serviceOrderChecked = getServiceOrder("test");
391 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
392 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
393 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
397 assertThat(executionTaskRepository.count()).isEqualTo(0);
402 private void changeCreationDate(ExecutionTask executionTaskA) {
403 Calendar cal = Calendar.getInstance();
404 cal.setTime(executionTaskA.getCreateDate());
405 cal.add(Calendar.SECOND, -30);
406 executionTaskA.setCreateDate(cal.getTime());
411 public void testE2EExecutionTaskFailed() throws Exception {
413 ExecutionTask executionTaskA =
414 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucess(
415 serviceOrderRepository, executionTaskRepository, ActionType.ADD);
417 Context.removeWireMockMapping(
418 "/onap/so/infra/e2eServiceInstances/v3/serviceId/operations/operationId");
421 SoTaskProcessor.processOrderItem(executionTaskA);
422 ServiceOrder serviceOrderChecked = getServiceOrder("test");
423 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
424 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
425 if (serviceOrderItem.getId().equals("A")) {
426 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.INPROGRESS);
428 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
431 executionTaskA = getExecutionTask("A");
433 executionTaskA.getLastAttemptDate().getTime() > executionTaskA.getCreateDate().getTime())
435 changeCreationDate(executionTaskA);
436 SoTaskProcessor.processOrderItem(executionTaskA);
438 serviceOrderChecked = getServiceOrder("test");
439 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
440 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
441 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
445 assertThat(executionTaskRepository.count()).isEqualTo(0);
451 public void testExecutionTaskFailedNoSoResponse() throws Exception {
453 ExecutionTask executionTaskA =
454 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
455 executionTaskRepository, ActionType.ADD);
457 Context.removeWireMockMapping("/onap/so/infra/serviceInstantiation/v7/serviceInstances/");
460 SoTaskProcessor.processOrderItem(executionTaskA);
461 ServiceOrder serviceOrderChecked = getServiceOrder("test");
462 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
463 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
464 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
467 assertThat(executionTaskRepository.count()).isEqualTo(0);
474 public void testExecutionTaskFailedNoSoAndStatusResponse() throws Exception {
476 ExecutionTask executionTaskA =
477 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
478 executionTaskRepository, ActionType.ADD);
480 Context.removeWireMockMapping("/onap/so/infra/serviceInstantiation/v7/serviceInstances/");
481 Context.removeWireMockMapping("/onap/so/infra/orchestrationRequests/v7/requestId");
484 SoTaskProcessor.processOrderItem(executionTaskA);
485 ServiceOrder serviceOrderChecked = getServiceOrder("test");
486 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
487 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
488 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
491 assertThat(executionTaskRepository.count()).isEqualTo(0);
496 public void testE2EExecutionTaskFailedNoSoAndStatusResponse() throws Exception {
498 ExecutionTask executionTaskA =
499 ServiceOrderExecutionTaskAssertions.setUpBddForE2EExecutionTaskSucess(
500 serviceOrderRepository, executionTaskRepository, ActionType.ADD);
502 Context.removeWireMockMapping("/onap/so/infra/e2eServiceInstances/v3");
503 Context.removeWireMockMapping(
504 "/onap/so/infra/e2eServiceInstances/v3/serviceId/operations/operationId");
507 SoTaskProcessor.processOrderItem(executionTaskA);
508 ServiceOrder serviceOrderChecked = getServiceOrder("test");
509 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
510 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
511 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
514 assertThat(executionTaskRepository.count()).isEqualTo(0);
520 public void testExecutionTaskFailedBadRequestSo() throws Exception {
522 ExecutionTask executionTaskA =
523 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
524 executionTaskRepository, ActionType.ADD);
527 changeWireMockResponse("/onap/so/infra/serviceInstantiation/v7/serviceInstances/", 400,
528 "\"serviceException\": {\n" + " \"messageId\": \"SVC0002\",\n"
529 + " \"text\": \"Error parsing request. org.openecomp.mso.apihandler.common.ValidationException: serviceInstance already existsd\"\n"
533 SoTaskProcessor.processOrderItem(executionTaskA);
534 ServiceOrder serviceOrderChecked = getServiceOrder("test");
535 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
536 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
537 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
540 assertThat(executionTaskRepository.count()).isEqualTo(0);
542 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
543 if (serviceOrderItem.getId().equals("A")) {
544 assertThat(serviceOrderItem.getOrderItemMessage().size()).isEqualTo(1);
545 assertThat(serviceOrderItem.getOrderItemMessage().get(0).getCode()).isEqualTo("105");
546 assertThat(serviceOrderItem.getOrderItemMessage().get(0).getField())
547 .isEqualTo("service.name");
555 public void testExecutionTaskModifySuccess() throws Exception {
557 ExecutionTask executionTaskA =
558 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
559 executionTaskRepository, ActionType.MODIFY);
560 ExecutionTask executionTaskB;
563 SoTaskProcessor.processOrderItem(executionTaskA);
564 ServiceOrder serviceOrderChecked = getServiceOrder("test");
565 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
566 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
567 if (serviceOrderItem.getId().equals("A")) {
568 // assertThat(serviceOrderItem.getState()).isEqualTo(StateType.INPROGRESS);
569 assertThat(serviceOrderItem.getState())
570 .isEqualTo(StateType.INPROGRESS_MODIFY_ITEM_TO_CREATE);
572 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
575 SoTaskProcessor.processOrderItem(executionTaskA);
576 serviceOrderChecked = getServiceOrder("test");
577 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
578 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
579 if (serviceOrderItem.getId().equals("A")) {
580 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
582 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
586 executionTaskB = getExecutionTask("B");
587 assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
588 executionTaskA = getExecutionTask("A");
589 assertThat(executionTaskA).isNull();
591 SoTaskProcessor.processOrderItem(executionTaskB);
592 SoTaskProcessor.processOrderItem(executionTaskB);
594 serviceOrderChecked = getServiceOrder("test");
595 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
596 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
597 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
601 assertThat(executionTaskRepository.count()).isEqualTo(0);
608 public void testExecutionTaskModifyFailed() throws Exception {
610 ExecutionTask executionTaskA =
611 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
612 executionTaskRepository, ActionType.MODIFY);
613 ExecutionTask executionTaskB;
614 Context.removeWireMockMapping("/onap/so/infra/orchestrationRequests/v7/requestId");
617 SoTaskProcessor.processOrderItem(executionTaskA);
618 ServiceOrder serviceOrderChecked = getServiceOrder("test");
619 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
620 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
621 if (serviceOrderItem.getId().equals("A")) {
622 // assertThat(serviceOrderItem.getState()).isEqualTo(StateType.INPROGRESS);
623 assertThat(serviceOrderItem.getState())
624 .isEqualTo(StateType.INPROGRESS_MODIFY_REQUEST_DELETE_SEND);
626 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
629 executionTaskA = getExecutionTask("A");
631 executionTaskA.getLastAttemptDate().getTime() > executionTaskA.getCreateDate().getTime())
633 changeCreationDate(executionTaskA);
634 SoTaskProcessor.processOrderItem(executionTaskA);
636 serviceOrderChecked = getServiceOrder("test");
637 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
638 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
639 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
643 assertThat(executionTaskRepository.count()).isEqualTo(0);
648 public void testExecutionTaskWithoutOnap() throws Exception {
649 Context.stopWiremock();
650 ExecutionTask executionTaskA =
651 ServiceOrderExecutionTaskAssertions.setUpBddForExecutionTaskSucess(serviceOrderRepository,
652 executionTaskRepository, ActionType.ADD);
654 SoTaskProcessor.processOrderItem(executionTaskA);
655 ServiceOrder serviceOrderChecked = getServiceOrder("test");
656 assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.FAILED);
657 for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
658 assertThat(serviceOrderItem.getState()).isEqualTo(StateType.FAILED);
660 assertThat(serviceOrderChecked.getOrderMessage().size()).isGreaterThan(0);
661 assertThat(serviceOrderChecked.getOrderMessage().get(0).getCode()).isEqualTo("502");
662 assertThat(serviceOrderChecked.getOrderMessage().get(0).getMessageInformation())
663 .isEqualTo("Problem with SO API");
665 assertThat(executionTaskRepository.count()).isEqualTo(0);
666 Context.startWiremock();