diff options
Diffstat (limited to 'generic-resource-api/provider/src/test/java/org/onap/sdnc/northbound/util/GenericResourceApiSvcLogicServiceClientMockUtil.java')
-rw-r--r-- | generic-resource-api/provider/src/test/java/org/onap/sdnc/northbound/util/GenericResourceApiSvcLogicServiceClientMockUtil.java | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/generic-resource-api/provider/src/test/java/org/onap/sdnc/northbound/util/GenericResourceApiSvcLogicServiceClientMockUtil.java b/generic-resource-api/provider/src/test/java/org/onap/sdnc/northbound/util/GenericResourceApiSvcLogicServiceClientMockUtil.java new file mode 100644 index 00000000..cd6280b7 --- /dev/null +++ b/generic-resource-api/provider/src/test/java/org/onap/sdnc/northbound/util/GenericResourceApiSvcLogicServiceClientMockUtil.java @@ -0,0 +1,124 @@ +/*- + * ============LICENSE_START======================================================= + * openECOMP : SDN-C + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.sdnc.northbound.util; + +import org.onap.sdnc.northbound.GenericResourceApiSvcLogicServiceClient; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.service.data.ServiceDataBuilder; + +import java.util.Properties; + +import static org.mockito.Mockito.eq; +import static org.mockito.Mockito.isA; +import static org.mockito.Mockito.when; +import static org.onap.sdnc.northbound.util.MDSALUtil.build; +import static org.onap.sdnc.northbound.util.PropBuilder.propBuilder; + + +/** + * GenericResourceApiSvcLogicServiceClientMockUtil provides a set of util methods for quickly configuring method + * behaviour on the Mock GenericResourceApiSvcLogicServiceClient + */ +public class GenericResourceApiSvcLogicServiceClientMockUtil { + + + private final String MODULE = "generic-resource-api"; + private final String MODE = "sync"; + private final String VERSION = null; + private String scvOperation = null; + + + public final String errorCode = "error-code"; + public final String errorMessage = "error-message"; + public final String ackFinal = "ack-final"; + public final String serviceObjectPath = "service-object-path"; + + private final GenericResourceApiSvcLogicServiceClient mockGenericResourceApiSvcLogicServiceClient; + + + + public GenericResourceApiSvcLogicServiceClientMockUtil(GenericResourceApiSvcLogicServiceClient mockGenericResourceApiSvcLogicServiceClient) { + this.mockGenericResourceApiSvcLogicServiceClient = mockGenericResourceApiSvcLogicServiceClient; + } + + + /** @param scvOperation - The scvOperation parameter to use on the {@link GenericResourceApiSvcLogicServiceClient} methods */ + public void setScvOperation(String scvOperation) { + this.scvOperation = scvOperation; + } + + /** + * Configure {@link GenericResourceApiSvcLogicServiceClient#hasGraph(String, String, String, String)} + * to return the specified value when when invoked with the parameters + * {@link #MODULE}, {@link #MODE}, {@link #VERSION} and {@link #scvOperation} + */ + public void mockHasGraph(Boolean isHasGraph) throws Exception { + when( + mockGenericResourceApiSvcLogicServiceClient + .hasGraph( + eq(MODULE), + eq(scvOperation), + eq(VERSION), + eq(MODE) + ) + ) + .thenReturn(isHasGraph); + } + + + /** + * @return + * PropBuilder - A PropBuilder populated with the expected properties returned from + * {@link GenericResourceApiSvcLogicServiceClient#execute(String, String, String, String, ServiceDataBuilder, Properties)} + */ + public PropBuilder createExecuteOKResult(){ + return propBuilder() + .set(errorCode,"200") + .set(errorMessage,"OK") + .set(ackFinal,"Y") + .set(serviceObjectPath,"XYZ"); + } + + + /** + * Configure + * {@link GenericResourceApiSvcLogicServiceClient#execute(String, String, String, String, ServiceDataBuilder, Properties)} + * to return the specified svcResultProp when when invoked with the parameters + * {@link #MODULE}, {@link #MODE}, {@link #VERSION} and {@link #scvOperation} + */ + public void mockExecute(PropBuilder svcResultProp) throws Exception{ + when( + mockGenericResourceApiSvcLogicServiceClient + .execute( + eq(MODULE), + eq(scvOperation), + eq(VERSION), + eq(MODE), + isA(ServiceDataBuilder.class), + isA(Properties.class) + ) + ) + .thenReturn(build( + svcResultProp + )); + } + +} |