Fix Java OOF Client 63/84363/3
authorMarcus G K Williams <marcus.williams@intel.com>
Fri, 5 Apr 2019 16:33:02 +0000 (09:33 -0700)
committerMarcus Williams <marcus.williams@intel.com>
Fri, 5 Apr 2019 19:05:46 +0000 (19:05 +0000)
Update IT tests to check correct post
and update client to correct post behavior.

Issue-ID: SO-1469
Change-Id: I8339cbff944587df5663d1fbff7f0cc41b7f2fe6
Signed-off-by: Marcus G K Williams <marcus.williams@intel.com>
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/ModelInfo.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/OofRequest.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/OofRequestParameters.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/PlacementDemand.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/PlacementInfo.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/RequestInfo.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/ResourceModelInfo.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/ServiceInfo.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/oof/beans/SubscriberInfo.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/client/oof/OofClientTestIT.java

index 8e136e9..f5fb875 100644 (file)
@@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -115,9 +114,4 @@ public class ModelInfo implements Serializable {
         this.modelCustomizationName = modelCustomizationName;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("modelType", modelType).append("modelInvariantId", modelInvariantId).append("modelVersionId", modelVersionId).append("modelName", modelName).append("modelVersion", modelVersion).append("modelCustomizationName", modelCustomizationName).toString();
-    }
-
 }
index 7dfd684..58f0bfc 100644 (file)
@@ -23,7 +23,6 @@ package org.onap.so.client.oof.beans;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonInclude.Include;
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonRawValue;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.ObjectWriter;
 import org.slf4j.Logger;
@@ -37,16 +36,16 @@ public class OofRequest implements Serializable{
     private static final long serialVersionUID = -1541132882892163132L;
     private static final Logger logger = LoggerFactory.getLogger(OofRequest.class);
 
-    @JsonRawValue
+
     @JsonProperty("requestInfo")
     private RequestInfo requestInformation;
-    @JsonRawValue
+
     @JsonProperty("serviceInfo")
     private ServiceInfo serviceInformation;
-    @JsonRawValue
+
     @JsonProperty("placementInfo")
     private PlacementInfo placementInformation;
-    @JsonRawValue
+
     @JsonProperty("licenseInfo")
     private String licenseInformation;
 
index 34b05e2..621f565 100644 (file)
@@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -77,9 +76,4 @@ public class OofRequestParameters implements Serializable {
         this.customerName = customerName;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("customerLatitude", customerLatitude).append("customerLongitude", customerLongitude).append("customerName", customerName).toString();
-    }
-
 }
index a213723..38728ef 100644 (file)
@@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -89,9 +88,4 @@ public class PlacementDemand implements Serializable {
         this.resourceModelInfo = resourceModelInfo;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("resourceModuleName", resourceModuleName).append("serviceResourceId", serviceResourceId).append("tenantId", tenantId).append("resourceModelInfo", resourceModelInfo).toString();
-    }
-
 }
index 5bda42f..2a7dc9d 100644 (file)
@@ -26,7 +26,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @JsonPropertyOrder({
@@ -76,9 +75,4 @@ public class PlacementInfo implements Serializable {
         this.placementDemands = placementDemands;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("requestParameters", requestParameters).append("subscriberInfo", subscriberInfo).append("placementDemands", placementDemands).toString();
-    }
-
 }
index ea33a26..6831fe5 100644 (file)
@@ -26,7 +26,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @JsonPropertyOrder({
@@ -141,9 +140,4 @@ public class RequestInfo implements Serializable {
         this.timeout = timeout;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("transactionId", transactionId).append("requestId", requestId).append("callbackUrl", callbackUrl).append("sourceId", sourceId).append("requestType", requestType).append("numSolutions", numSolutions).append("optimizers", optimizers).append("timeout", timeout).toString();
-    }
-
 }
index 63aec13..e9257bc 100644 (file)
@@ -22,9 +22,7 @@ package org.onap.so.client.oof.beans;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -107,9 +105,4 @@ public class ResourceModelInfo extends ModelInfo implements Serializable {
         this.modelCustomizationName = modelCustomizationName;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("modelInvariantId", modelInvariantId).append("modelVersionId", modelVersionId).append("modelName", modelName).append("modelType", modelType).append("modelVersion", modelVersion).append("modelCustomizationName", modelCustomizationName).toString();
-    }
-
 }
index 90443ce..0cfffbb 100644 (file)
@@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -76,9 +75,4 @@ public class ServiceInfo implements Serializable {
         this.modelInfo = modelInfo;
     }
 
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("serviceInstanceId", serviceInstanceId).append("serviceName", serviceName).append("modelInfo", modelInfo).toString();
-    }
-
 }
index bc283c8..3218975 100644 (file)
@@ -24,7 +24,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import com.fasterxml.jackson.annotation.JsonRootName;
-import org.apache.commons.lang.builder.ToStringBuilder;
 
 import java.io.Serializable;
 
@@ -75,10 +74,4 @@ public class SubscriberInfo implements Serializable {
     public void setSubscriberCommonSiteId(String subscriberCommonSiteId) {
         this.subscriberCommonSiteId = subscriberCommonSiteId;
     }
-
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this).append("globalSubscriberId", globalSubscriberId).append("subscriberName", subscriberName).append("subscriberCommonSiteId", subscriberCommonSiteId).toString();
-    }
-
 }
index 05ba512..c4e5041 100644 (file)
@@ -23,35 +23,162 @@ package org.onap.so.client.oof;
 import static com.github.tomakehurst.wiremock.client.WireMock.aResponse;
 import static com.github.tomakehurst.wiremock.client.WireMock.post;
 import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo;
+import static org.junit.Assert.assertEquals;
 
 import org.junit.Test;
 import org.onap.so.BaseIntegrationTest;
 import org.onap.so.client.exception.BadResponseException;
+import org.onap.so.client.oof.beans.ModelInfo;
 import org.onap.so.client.oof.beans.OofRequest;
+import org.onap.so.client.oof.beans.OofRequestParameters;
+import org.onap.so.client.oof.beans.PlacementDemand;
+import org.onap.so.client.oof.beans.PlacementInfo;
+import org.onap.so.client.oof.beans.RequestInfo;
+import org.onap.so.client.oof.beans.ResourceModelInfo;
+import org.onap.so.client.oof.beans.ServiceInfo;
+import org.onap.so.client.oof.beans.SubscriberInfo;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 
+import java.util.ArrayList;
+import java.util.List;
+
 
 public class OofClientTestIT extends BaseIntegrationTest {
 
     @Autowired
     private OofClient client;
 
-
-    @Test(expected = Test.None.class)
+    @Test
     public void testPostDemands_success() throws BadResponseException, JsonProcessingException {
         String mockResponse = "{\"transactionId\": \"123456789\", \"requestId\": \"1234\", \"statusMessage\": \"status\", \"requestStatus\": \"accepted\"}";
 
+        ModelInfo modelInfo = new ModelInfo();
+        modelInfo.setModelCustomizationName("modelCustomizationName-Service");
+        modelInfo.setModelInvariantId("modelInvariantId-Service");
+        modelInfo.setModelName("modelName-Service");
+        modelInfo.setModelType("modelType-Service");
+        modelInfo.setModelVersion("modelVersion-Service");
+        modelInfo.setModelVersionId("modelVersionId-Service");
+
+        ServiceInfo serviceInfo = new ServiceInfo();
+        serviceInfo.setModelInfo(modelInfo);
+        serviceInfo.setServiceInstanceId("serviceInstanceId");
+        serviceInfo.setServiceName("serviceName");
+
+        SubscriberInfo subscriberInfo = new SubscriberInfo();
+        subscriberInfo.setGlobalSubscriberId("globalSubscriberId");
+        subscriberInfo.setSubscriberCommonSiteId("subscriberCommonSiteId");
+        subscriberInfo.setSubscriberName("subscriberName");
+
+        ResourceModelInfo resourceModelInfo = new ResourceModelInfo();
+        resourceModelInfo.setModelType("modelType");
+        resourceModelInfo.setModelCustomizationName("modelCustomizationName");
+        resourceModelInfo.setModelInvariantId("invarianteId");
+        resourceModelInfo.setModelName("modelName");
+        resourceModelInfo.setModelVersion("version");
+        resourceModelInfo.setModelVersionId("versionId");
+
+        PlacementDemand placementDemand = new PlacementDemand();
+        placementDemand.setResourceModelInfo(resourceModelInfo);
+        placementDemand.setResourceModuleName("resourceModuleName");
+        placementDemand.setServiceResourceId("serviceResourceId");
+        placementDemand.setTenantId("tenantId");
+
+        OofRequestParameters oofRequestParameters = new OofRequestParameters();
+        oofRequestParameters.setCustomerLatitude("customerLatitude");
+        oofRequestParameters.setCustomerLongitude("customerLongitude");
+        oofRequestParameters.setCustomerName("customerName");
+
+        ArrayList<PlacementDemand> placementDemands = new ArrayList<>();
+        placementDemands.add(placementDemand);
+
+        PlacementInfo placementInfo = new PlacementInfo();
+        placementInfo.setPlacementDemands(placementDemands);
+        placementInfo.setRequestParameters(oofRequestParameters);
+        placementInfo.setSubscriberInfo(subscriberInfo);
+
+        RequestInfo requestInfo = new RequestInfo();
+        requestInfo.setTransactionId("transactionId");
+        List<String> optimizer = new ArrayList<>();
+        optimizer.add("optimizer1");
+        optimizer.add("optimizer2");
+        requestInfo.setOptimizers(optimizer);
+        requestInfo.setCallbackUrl("callBackUrl");
+        requestInfo.setNumSolutions(1);
+        requestInfo.setRequestId("requestId");
+        requestInfo.setSourceId("sourceId");
+        requestInfo.setTimeout(30L);
+        requestInfo.setRequestType("requestType");
+
+        OofRequest oofRequest = new OofRequest();
+        oofRequest.setRequestInformation(requestInfo);
+        oofRequest.setPlacementInformation(placementInfo);
+        oofRequest.setServiceInformation(serviceInfo);
+        oofRequest.setLicenseInformation("");
+
         wireMockServer.stubFor(post(urlEqualTo("/api/oof/v1/placement"))
                 .willReturn(aResponse().withStatus(200)
                         .withHeader("Content-Type", "application/json")
                         .withBody(mockResponse)));
 
-        client.postDemands(new OofRequest());
+        client.postDemands(oofRequest);
+
+        String oofRequestOutput = oofRequest.toJsonString();
+        assertEquals("{\n" +
+                "  \"requestInfo\" : {\n" +
+                "    \"transactionId\" : \"transactionId\",\n" +
+                "    \"requestId\" : \"requestId\",\n" +
+                "    \"callbackUrl\" : \"callBackUrl\",\n" +
+                "    \"sourceId\" : \"sourceId\",\n" +
+                "    \"requestType\" : \"requestType\",\n" +
+                "    \"numSolutions\" : 1,\n" +
+                "    \"optimizers\" : [ \"optimizer1\", \"optimizer2\" ],\n" +
+                "    \"timeout\" : 30\n" +
+                "  },\n" +
+                "  \"serviceInfo\" : {\n" +
+                "    \"serviceInstanceId\" : \"serviceInstanceId\",\n" +
+                "    \"serviceName\" : \"serviceName\",\n" +
+                "    \"modelInfo\" : {\n" +
+                "      \"modelType\" : \"modelType-Service\",\n" +
+                "      \"modelInvariantId\" : \"modelInvariantId-Service\",\n" +
+                "      \"modelVersionId\" : \"modelVersionId-Service\",\n" +
+                "      \"modelName\" : \"modelName-Service\",\n" +
+                "      \"modelVersion\" : \"modelVersion-Service\",\n" +
+                "      \"modelCustomizationName\" : \"modelCustomizationName-Service\"\n" +
+                "    }\n" +
+                "  },\n" +
+                "  \"placementInfo\" : {\n" +
+                "    \"requestParameters\" : {\n" +
+                "      \"customerLatitude\" : \"customerLatitude\",\n" +
+                "      \"customerLongitude\" : \"customerLongitude\",\n" +
+                "      \"customerName\" : \"customerName\"\n" +
+                "    },\n" +
+                "    \"subscriberInfo\" : {\n" +
+                "      \"globalSubscriberId\" : \"globalSubscriberId\",\n" +
+                "      \"subscriberName\" : \"subscriberName\",\n" +
+                "      \"subscriberCommonSiteId\" : \"subscriberCommonSiteId\"\n" +
+                "    },\n" +
+                "    \"placementDemands\" : [ {\n" +
+                "      \"resourceModuleName\" : \"resourceModuleName\",\n" +
+                "      \"serviceResourceId\" : \"serviceResourceId\",\n" +
+                "      \"tenantId\" : \"tenantId\",\n" +
+                "      \"resourceModelInfo\" : {\n" +
+                "        \"modelType\" : \"modelType\",\n" +
+                "        \"modelInvariantId\" : \"invarianteId\",\n" +
+                "        \"modelVersionId\" : \"versionId\",\n" +
+                "        \"modelName\" : \"modelName\",\n" +
+                "        \"modelVersion\" : \"version\",\n" +
+                "        \"modelCustomizationName\" : \"modelCustomizationName\"\n" +
+                "      }\n" +
+                "    } ]\n" +
+                "  },\n" +
+                "  \"licenseInfo\" : \"\"\n" +
+                "}", oofRequestOutput);
     }
 
-    @Test(expected = Test.None.class)
+    @Test
     public void testAsyncResponse_success() throws BadResponseException, JsonProcessingException {
         String mockResponse = "{\"transactionId\": \"123456789\", \"requestId\": \"1234\", \"statusMessage\": \"status\", \"requestStatus\": \"accepted\"}";