From ce0a7807b322f16b86090899b33160825fa9fd10 Mon Sep 17 00:00:00 2001
From: "Gamboa, Gilbert" <gilbert.g.gamboa@att.com>
Date: Thu, 18 Jul 2019 14:37:21 -0400
Subject: Fix error updating request_processing_data

Fix error when updating existing record in request_processing_data
table.
Use correct field name in the toString method in RequestProcessingData
bean class.
RequestDbClient.updateRequestProcessingData should include entity id in
the URI on the PUT request.
Add new Config class ExposeEntityIdResourceConfiguration to make
Spring data Rest return id in the response for RequestProcessingData.
Make spring-boot-starter-data-rest not optional dependency in
mso-requests-db-repositories
Added unit test for RequestDbClient.updateRequestProcessingData()
method.

Issue-ID: SO-2120
Signed-off-by: Benjamin, Max (mb388a) <mb388a@att.com>
Change-Id: I733be06185e5c19a0b7112918ce0a0f2abf861d7
---
 .../so/db/request/client/RequestsDbClient.java     |  2 +-
 .../so/db/request/client/RequestDbClientTest.java  | 35 ++++++++++++++++++++++
 2 files changed, 36 insertions(+), 1 deletion(-)
 create mode 100644 mso-api-handlers/mso-requests-db/src/test/java/org/onap/so/db/request/client/RequestDbClientTest.java

(limited to 'mso-api-handlers/mso-requests-db')

diff --git a/mso-api-handlers/mso-requests-db/src/main/java/org/onap/so/db/request/client/RequestsDbClient.java b/mso-api-handlers/mso-requests-db/src/main/java/org/onap/so/db/request/client/RequestsDbClient.java
index 7a24d14e9b..4d16d9c272 100644
--- a/mso-api-handlers/mso-requests-db/src/main/java/org/onap/so/db/request/client/RequestsDbClient.java
+++ b/mso-api-handlers/mso-requests-db/src/main/java/org/onap/so/db/request/client/RequestsDbClient.java
@@ -354,7 +354,7 @@ public class RequestsDbClient {
 
     public void updateRequestProcessingData(RequestProcessingData requestProcessingData) {
         HttpHeaders headers = getHttpHeaders();
-        URI uri = getUri(requestProcessingDataURI);
+        URI uri = getUri(requestProcessingDataURI + "/" + requestProcessingData.getId());
         HttpEntity<RequestProcessingData> entity = new HttpEntity<>(requestProcessingData, headers);
         restTemplate.put(uri, entity);
     }
diff --git a/mso-api-handlers/mso-requests-db/src/test/java/org/onap/so/db/request/client/RequestDbClientTest.java b/mso-api-handlers/mso-requests-db/src/test/java/org/onap/so/db/request/client/RequestDbClientTest.java
new file mode 100644
index 0000000000..fdbc04acb4
--- /dev/null
+++ b/mso-api-handlers/mso-requests-db/src/test/java/org/onap/so/db/request/client/RequestDbClientTest.java
@@ -0,0 +1,35 @@
+package org.onap.so.db.request.client;
+
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.isA;
+import static org.mockito.Mockito.times;
+import java.net.URI;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.onap.so.db.request.beans.RequestProcessingData;
+import org.springframework.http.HttpEntity;
+import org.springframework.web.client.RestTemplate;
+
+
+@RunWith(MockitoJUnitRunner.class)
+public class RequestDbClientTest {
+
+    @InjectMocks
+    protected RequestsDbClient requestsDbClient;
+
+    @Mock
+    protected RestTemplate restTemplate;
+
+    @Test
+    public void updateRequestProcessingDataTest() {
+        RequestProcessingData requestProcessingData = new RequestProcessingData();
+        requestProcessingData.setId(1);
+        URI uri = URI.create("/requestProcessingData/1");
+        requestsDbClient.updateRequestProcessingData(requestProcessingData);
+        Mockito.verify(restTemplate, times(1)).put(eq(uri), isA(HttpEntity.class));
+    }
+}
-- 
cgit