2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.so.apihandlerinfra.validation;
23 import static org.junit.Assert.assertFalse;
24 import static org.junit.Assert.assertTrue;
26 import java.io.IOException;
27 import java.nio.file.Files;
28 import java.nio.file.Paths;
29 import java.util.HashMap;
31 import org.junit.Test;
32 import org.onap.so.apihandlerinfra.Action;
33 import org.onap.so.apihandlerinfra.BaseTest;
34 import org.onap.so.exceptions.ValidationException;
35 import org.onap.so.serviceinstancebeans.ServiceInstancesRequest;
37 import com.fasterxml.jackson.databind.ObjectMapper;
39 public class RequestParametersValidationTest extends BaseTest{
42 public void testVfModuleWithFalseALaCarte() throws IOException, ValidationException {
43 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleModelVersionId.json")));
44 ObjectMapper mapper = new ObjectMapper();
45 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
46 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
47 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
48 6, false, sir.getRequestDetails().getRequestParameters());
49 info.setRequestScope("vfModule");
50 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
51 RequestParametersValidation validation = new RequestParametersValidation();
52 validation.validate(info);
53 assertFalse(sir.getRequestDetails().getRequestParameters().getUsePreload());
54 assertFalse(info.getReqParameters().getUsePreload());
58 public void testVfModuleWithNoALaCarte() throws IOException, ValidationException {
59 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleRequestParametersNoALaCarte.json")));
60 ObjectMapper mapper = new ObjectMapper();
61 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
62 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
63 6, false, sir.getRequestDetails().getRequestParameters());
64 info.setRequestScope("vfModule");
65 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
66 RequestParametersValidation validation = new RequestParametersValidation();
67 validation.validate(info);
69 assertTrue(sir.getRequestDetails().getRequestParameters().getUsePreload());
70 assertTrue(info.getReqParameters().getUsePreload());
74 public void testVfModuleWithTrueALaCarte() throws IOException, ValidationException {
75 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleRequestParametersIsALaCarte.json")));
76 ObjectMapper mapper = new ObjectMapper();
77 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
78 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
79 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
80 6, true, sir.getRequestDetails().getRequestParameters());
81 info.setRequestScope("vfModule");
82 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
83 RequestParametersValidation validation = new RequestParametersValidation();
84 validation.validate(info);
86 assertTrue(sir.getRequestDetails().getRequestParameters().getUsePreload());
87 assertTrue(info.getReqParameters().getUsePreload());
91 public void testVfModuleWithReqVersionBelow4() throws IOException, ValidationException {
92 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleModelVersionId.json")));
93 ObjectMapper mapper = new ObjectMapper();
94 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
95 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
96 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
97 3, false, sir.getRequestDetails().getRequestParameters());
98 info.setRequestScope("vfModule");
99 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
100 RequestParametersValidation validation = new RequestParametersValidation();
101 validation.validate(info);
102 assertTrue(sir.getRequestDetails().getRequestParameters().getUsePreload());
103 assertTrue(info.getReqParameters().getUsePreload());
107 public void testServiceWithFalseALaCarte() throws IOException, ValidationException {
108 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleModelVersionId.json")));
109 ObjectMapper mapper = new ObjectMapper();
110 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
111 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
112 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
113 6, false, sir.getRequestDetails().getRequestParameters());
114 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
115 info.setRequestScope("service");
116 RequestParametersValidation validation = new RequestParametersValidation();
117 validation.validate(info);
118 assertFalse(sir.getRequestDetails().getRequestParameters().getUsePreload());
119 assertFalse(info.getReqParameters().getUsePreload());
123 public void testServiceWithNoALaCarte() throws IOException, ValidationException {
124 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleRequestParametersNoALaCarte.json")));
125 ObjectMapper mapper = new ObjectMapper();
126 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
127 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
128 6, false, sir.getRequestDetails().getRequestParameters());
129 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
130 sir.getRequestDetails().getRequestParameters().setSubscriptionServiceType("subscriptionServiceType");
131 info.setRequestScope("service");
132 RequestParametersValidation validation = new RequestParametersValidation();
133 validation.validate(info);
134 assertFalse(sir.getRequestDetails().getRequestParameters().getUsePreload());
135 assertFalse(info.getReqParameters().getUsePreload());
139 public void testServiceWithTrueALaCarte() throws IOException, ValidationException {
140 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleRequestParametersIsALaCarte.json")));
141 ObjectMapper mapper = new ObjectMapper();
142 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
143 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
144 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
145 6, true, sir.getRequestDetails().getRequestParameters());
146 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
147 info.setRequestScope("service");
148 RequestParametersValidation validation = new RequestParametersValidation();
149 validation.validate(info);
150 assertTrue(sir.getRequestDetails().getRequestParameters().getUsePreload());
151 assertTrue(info.getReqParameters().getUsePreload());
155 public void testServiceWithReqVersionBelow4() throws IOException, ValidationException {
156 String requestJson = new String(Files.readAllBytes(Paths.get("src/test/resources/MsoRequestTest/RequestParameters/VfModuleModelVersionId.json")));
157 ObjectMapper mapper = new ObjectMapper();
158 ServiceInstancesRequest sir = mapper.readValue(requestJson, ServiceInstancesRequest.class);
159 sir.getRequestDetails().getRequestParameters().setUsePreload(null);
160 ValidationInformation info = new ValidationInformation(sir, new HashMap<String, String>(), Action.createInstance,
161 3, false, sir.getRequestDetails().getRequestParameters());
162 sir.setServiceInstanceId("0fd90c0c-0e3a-46e2-abb5-4c4820d5985b");
163 info.setRequestScope("service");
164 RequestParametersValidation validation = new RequestParametersValidation();
165 validation.validate(info);
166 assertTrue(sir.getRequestDetails().getRequestParameters().getUsePreload());
167 assertTrue(info.getReqParameters().getUsePreload());