@Override
public boolean shouldRunFor(String requestUri, ServiceInstancesRequest request, Actions action) {
return Pattern.compile("[Vv][5-8]/serviceInstances/[^/]+/vnfs/[^/]+").matcher(requestUri).matches()
- && action.equals(Action.deleteInstance);
+ && action.equals(Action.deleteInstance)
+ && Boolean.TRUE.equals(request.getRequestDetails().getRequestParameters().getALaCarte());
}
@Override
import org.onap.so.apihandlerinfra.Action;
import org.onap.so.apihandlerinfra.infra.rest.AAIDataRetrieval;
import org.onap.so.apihandlerinfra.infra.rest.validators.VnfDeleteValidator;
+import org.onap.so.serviceinstancebeans.RequestDetails;
+import org.onap.so.serviceinstancebeans.RequestParameters;
import org.onap.so.serviceinstancebeans.ServiceInstancesRequest;
private Map<String, String> instanceIdMap = new HashMap<>();
+ public ServiceInstancesRequest createServiceInstancesRequest(boolean alacarte) {
+ ServiceInstancesRequest sir = new ServiceInstancesRequest();
+ sir.setRequestDetails(new RequestDetails());
+ sir.getRequestDetails().setRequestParameters(new RequestParameters());
+ sir.getRequestDetails().getRequestParameters().setaLaCarte(alacarte);
+ return sir;
+ }
+
@Test
public void validateURIMatchTest() {
assertEquals(true, vnfValidator.shouldRunFor("v8/serviceInstances/uasdfasdf/vnfs/asdfasdf",
- new ServiceInstancesRequest(), Action.deleteInstance));
+ createServiceInstancesRequest(true), Action.deleteInstance));
+ }
+
+ @Test
+ public void validateURIMatchNonAlacarteTest() {
+ assertEquals(false, vnfValidator.shouldRunFor("v8/serviceInstances/uasdfasdf/vnfs/asdfasdf",
+ createServiceInstancesRequest(false), Action.deleteInstance));
}
@Test