1 package org.onap.so.apihandlerinfra.infra.rest.validator;
3 import static org.junit.Assert.assertEquals;
4 import static org.mockito.Mockito.when;
5 import java.util.HashMap;
7 import java.util.Optional;
8 import org.junit.Before;
10 import org.junit.runner.RunWith;
11 import org.mockito.InjectMocks;
12 import org.mockito.Mock;
13 import org.mockito.Spy;
14 import org.mockito.junit.MockitoJUnitRunner;
15 import org.onap.so.apihandlerinfra.Action;
16 import org.onap.so.apihandlerinfra.infra.rest.AAIDataRetrieval;
17 import org.onap.so.apihandlerinfra.infra.rest.validators.ServiceInstanceDeleteValidator;
18 import org.onap.so.serviceinstancebeans.RequestDetails;
19 import org.onap.so.serviceinstancebeans.RequestParameters;
20 import org.onap.so.serviceinstancebeans.ServiceInstancesRequest;
23 @RunWith(MockitoJUnitRunner.class)
24 public class ServiceInstanceDeleteValidatorTest {
29 private ServiceInstanceDeleteValidator serviceValidator;
32 private AAIDataRetrieval aaiDataRetrieval;
34 private Map<String, String> instanceIdMap = new HashMap<>();
36 private ServiceInstancesRequest serviceInstancesRequest;
39 public void before() {
40 serviceInstancesRequest = new ServiceInstancesRequest();
41 RequestDetails requestDetails = new RequestDetails();
42 RequestParameters requestParameters = new RequestParameters();
43 requestParameters.setaLaCarte(true);
44 requestDetails.setRequestParameters(requestParameters);
45 serviceInstancesRequest.setRequestDetails(requestDetails);
49 public void validateURIMatchTest() {
50 assertEquals(true, serviceValidator.shouldRunFor("v8/serviceInstances/uasdfasdf", serviceInstancesRequest,
51 Action.deleteInstance));
55 public void validateURINotMatchTest() {
56 assertEquals(false, serviceValidator.shouldRunFor("v8/serviceInstances/uasdfasdf/vnfs/asdfasdf",
57 serviceInstancesRequest, Action.deleteInstance));
61 public void validateURINotMatch2Test() {
62 assertEquals(false, serviceValidator.shouldRunFor("v8/serviceInstances/uasdfasdf/update",
63 serviceInstancesRequest, Action.deleteInstance));
67 public void validateNotALaCarteTest() {
68 serviceInstancesRequest.getRequestDetails().getRequestParameters().setaLaCarte(false);
69 assertEquals(false, serviceValidator.shouldRunFor("v8/serviceInstances/uasdfasdf", serviceInstancesRequest,
70 Action.deleteInstance));
74 public void validateSuccessTest() {
75 instanceIdMap.put("serviceInstanceId", "1");
76 when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
77 when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(false);
78 when(aaiDataRetrieval.isServiceRelatedToConfiguration("1")).thenReturn(false);
79 Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
80 assertEquals(false, result.isPresent());
84 public void validateFailureVnfTest() {
85 instanceIdMap.put("serviceInstanceId", "1");
86 when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(true);
87 Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
88 assertEquals(true, result.isPresent());
92 public void validateFailureNetworksTest() {
93 instanceIdMap.put("serviceInstanceId", "1");
94 when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
95 when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(true);
96 Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
97 assertEquals(true, result.isPresent());
101 public void validateFailureConfigurationTest() {
102 instanceIdMap.put("serviceInstanceId", "1");
103 when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
104 when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(false);
105 when(aaiDataRetrieval.isServiceRelatedToConfiguration("1")).thenReturn(true);
106 Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
107 assertEquals(true, result.isPresent());