summaryrefslogtreecommitdiffstats
path: root/so-optimization-clients
diff options
context:
space:
mode:
Diffstat (limited to 'so-optimization-clients')
-rw-r--r--so-optimization-clients/src/main/java/org/onap/so/client/sniro/SniroValidator.java22
-rw-r--r--so-optimization-clients/src/test/java/org/onap/so/client/oof/OofValidatorTest.java40
-rw-r--r--so-optimization-clients/src/test/java/org/onap/so/client/sniro/SniroValidatorTest.java62
3 files changed, 114 insertions, 10 deletions
diff --git a/so-optimization-clients/src/main/java/org/onap/so/client/sniro/SniroValidator.java b/so-optimization-clients/src/main/java/org/onap/so/client/sniro/SniroValidator.java
index fc16125433..9a66f75311 100644
--- a/so-optimization-clients/src/main/java/org/onap/so/client/sniro/SniroValidator.java
+++ b/so-optimization-clients/src/main/java/org/onap/so/client/sniro/SniroValidator.java
@@ -24,7 +24,7 @@ package org.onap.so.client.sniro;
import static org.apache.commons.lang3.StringUtils.*;
-import java.util.LinkedHashMap;
+import java.util.Map;
import org.json.JSONObject;
import org.onap.so.client.exception.BadResponseException;
import org.slf4j.Logger;
@@ -38,12 +38,14 @@ public class SniroValidator {
private static final Logger logger = LoggerFactory.getLogger(SniroValidator.class);
+ private static final String MESSAGE_NOT_PROVIDED = "error message not provided";
+
/**
* Validates the synchronous homing response from sniro manager
*
* @throws BadResponseException
*/
- public void validateDemandsResponse(LinkedHashMap<String, Object> response) throws BadResponseException {
+ public void validateDemandsResponse(Map<String, Object> response) throws BadResponseException {
logger.debug("Validating Sniro Managers synchronous response");
if (!response.isEmpty()) {
JSONObject jsonResponse = new JSONObject(response);
@@ -54,10 +56,10 @@ public class SniroValidator {
} else {
String message = jsonResponse.getString("statusMessage");
if (isNotBlank(message)) {
- logger.debug("Sniro Managers response indicates failed: " + message);
+ logger.debug("Sniro Managers response indicates failed: {}", message);
} else {
logger.debug("Sniro Managers response indicates failed: no status message provided");
- message = "error message not provided";
+ message = MESSAGE_NOT_PROVIDED;
}
throw new BadResponseException("Sniro Managers synchronous response indicates failed: " + message);
}
@@ -67,7 +69,7 @@ public class SniroValidator {
}
} else {
logger.debug("Sniro Managers synchronous response is empty");
- throw new BadResponseException("Sniro Managers synchronous response i is empty");
+ throw new BadResponseException("Sniro Managers synchronous response is empty");
}
}
@@ -85,11 +87,11 @@ public class SniroValidator {
} else {
String message = jsonResponse.getJSONObject("serviceException").getString("text");
if (isNotBlank(message)) {
- logger.debug("Sniro Managers response contains a service exception: " + message);
+ logger.debug("Sniro Managers response contains a service exception: {}", message);
} else {
logger.debug(
"Sniro Managers response contains a service exception: no service exception text provided");
- message = "error message not provided";
+ message = MESSAGE_NOT_PROVIDED;
}
throw new BadResponseException(
"Sniro Managers asynchronous response contains a service exception: " + message);
@@ -106,7 +108,7 @@ public class SniroValidator {
*
* @throws BadResponseException
*/
- public void validateReleaseResponse(LinkedHashMap<String, Object> response) throws BadResponseException {
+ public void validateReleaseResponse(Map<String, Object> response) throws BadResponseException {
logger.debug("Validating Sniro Conductors response");
if (!response.isEmpty()) {
String status = (String) response.get("status");
@@ -116,10 +118,10 @@ public class SniroValidator {
} else {
String message = (String) response.get("message");
if (isNotBlank(message)) {
- logger.debug("Sniro Conductors response indicates failed: " + message);
+ logger.debug("Sniro Conductors response indicates failed: {}", message);
} else {
logger.debug("Sniro Conductors response indicates failed: error message not provided");
- message = "error message not provided";
+ message = MESSAGE_NOT_PROVIDED;
}
throw new BadResponseException(
"Sniro Conductors synchronous response indicates failed: " + message);
diff --git a/so-optimization-clients/src/test/java/org/onap/so/client/oof/OofValidatorTest.java b/so-optimization-clients/src/test/java/org/onap/so/client/oof/OofValidatorTest.java
index 5f9be78491..eaea1abeaa 100644
--- a/so-optimization-clients/src/test/java/org/onap/so/client/oof/OofValidatorTest.java
+++ b/so-optimization-clients/src/test/java/org/onap/so/client/oof/OofValidatorTest.java
@@ -20,10 +20,13 @@
package org.onap.so.client.oof;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.fail;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
+import org.apache.logging.log4j.util.Strings;
import org.junit.Test;
import org.onap.so.client.exception.BadResponseException;
@@ -55,4 +58,41 @@ public class OofValidatorTest {
map.put("statusMessage", "a");
new OofValidator().validateDemandsResponse(map);
}
+
+ @Test
+ public void validateSolution_success() throws Exception {
+ String json = "{\"value\" : \"test1\"}";
+ new OofValidator().validateSolution(json);
+ }
+
+ @Test
+ public void validateSolution_EmptyResponse() {
+ try {
+ new OofValidator().validateSolution("");
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("oofs asynchronous response is empty");
+ }
+ }
+
+ @Test
+ public void validateSolution_serviceExceptionWithMessage() {
+ String json = "{\"serviceException\" : {\"text\" : \"serviceExceptionOccurred\"}}";
+ try {
+ new OofValidator().validateSolution(json);
+ fail("Exception should be thrown");
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("serviceExceptionOccurred");
+ }
+ }
+
+ @Test
+ public void validateSolution_serviceExceptionWithEmptyMessage() {
+ String json = "{\"serviceException\" : {\"text\" : \"\"}}";
+ try {
+ new OofValidator().validateSolution(json);
+ fail("Exception should be thrown");
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("error message not provided");
+ }
+ }
}
diff --git a/so-optimization-clients/src/test/java/org/onap/so/client/sniro/SniroValidatorTest.java b/so-optimization-clients/src/test/java/org/onap/so/client/sniro/SniroValidatorTest.java
new file mode 100644
index 0000000000..8288d70c21
--- /dev/null
+++ b/so-optimization-clients/src/test/java/org/onap/so/client/sniro/SniroValidatorTest.java
@@ -0,0 +1,62 @@
+package org.onap.so.client.sniro;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import org.junit.Test;
+import org.onap.so.client.exception.BadResponseException;
+
+public class SniroValidatorTest {
+
+ @Test
+ public void validateDemandsResponse_success() throws BadResponseException {
+ Map<String, Object> testMap = new LinkedHashMap<>();
+ testMap.put("requestStatus", "accepted");
+ new SniroValidator().validateDemandsResponse(testMap);
+ }
+
+ @Test
+ public void validateDemandsResponse_emptyResponse() {
+ try {
+ new SniroValidator().validateDemandsResponse(new LinkedHashMap<>());
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("Sniro Managers synchronous response is empty");
+ }
+ }
+
+ @Test
+ public void validateDemandsResponse_responseWithErrorMessage() {
+ String message = "An error occurred";
+ Map<String, Object> testMap = new LinkedHashMap<>();
+ testMap.put("requestStatus", "not_accepted");
+ testMap.put("statusMessage", message);
+ try {
+ new SniroValidator().validateDemandsResponse(testMap);
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("Sniro Managers synchronous response indicates failed: " + message);
+ }
+ }
+
+ @Test
+ public void validateDemandsResponse_responseWithoutMessage() {
+ Map<String, Object> testMap = new LinkedHashMap<>();
+ testMap.put("requestStatus", "not_accepted");
+ testMap.put("statusMessage", "");
+ try {
+ new SniroValidator().validateDemandsResponse(testMap);
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("error message not provided");
+ }
+ }
+
+ @Test
+ public void validateDemandsResponse_responseWithoutRequestStatus() {
+ Map<String, Object> testMap = new LinkedHashMap<>();
+ testMap.put("statusMessage", "");
+ try {
+ new SniroValidator().validateDemandsResponse(testMap);
+ } catch (BadResponseException e) {
+ assertThat(e.getMessage()).contains("Sniro Managers synchronous response does not contain: request status");
+ }
+ }
+}