From a46f5b6345622acd863ea41b61b607b847732151 Mon Sep 17 00:00:00 2001 From: Ittay Stern Date: Wed, 15 Jan 2020 19:52:33 +0200 Subject: Async MSO error format: handle more cases Try better not to fallback to "Http Code:400, null" Notably, handle the case where "serviceException" is inside a "requestError" container. Issue-ID: VID-749 Change-Id: I3c7d609aed893bbbeb71ebe4b465289c71e5c32b Signed-off-by: Ittay Stern --- .../test/java/org/onap/vid/mso/MsoUtilTest.java | 23 ++++++++++++++++++++++ .../AsyncInstantiationBusinessLogicTest.java | 3 ++- 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'vid-app-common/src/test/java/org') diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/MsoUtilTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/MsoUtilTest.java index 10456bebf..cfde52a56 100644 --- a/vid-app-common/src/test/java/org/onap/vid/mso/MsoUtilTest.java +++ b/vid-app-common/src/test/java/org/onap/vid/mso/MsoUtilTest.java @@ -26,6 +26,7 @@ import static org.assertj.core.api.Assertions.assertThat; import io.joshworks.restclient.http.HttpResponse; import org.onap.vid.testUtils.TestUtils; +import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class MsoUtilTest { @@ -67,4 +68,26 @@ public class MsoUtilTest { assertThat(result.getStatus()).isEqualTo(SC_OK); } + @DataProvider + public static Object[][] formatExceptionAdditionalInfo() { + return new Object[][]{ + {"message", "Http Code:400, message"}, + + {null, "Http Code:400"}, + + {"{\"requestError\":{\"serviceException\":{\"messageId\":\"SVC0002\",\"text\":\"message\"}}}", + "Http Code:400, \"messageId\":\"SVC0002\",\"text\":\"message\""}, + + {"{\"validJson\": \"Error: message\"}", "Http Code:400, {\"validJson\": \"Error: message\"}"}, + + {"{\"serviceException\":{\"messageId\":\"SVC0002\",\"text\":\"Error: message\"}}", + "Http Code:400, \"messageId\":\"SVC0002\",\"text\":\"Error: message\""}, + }; + } + + @Test(dataProvider = "formatExceptionAdditionalInfo") + public void formatExceptionAdditionalInfo_payloadWithError400_doNotReturnNull(String payload, String expected) { + assertThat(MsoUtil.formatExceptionAdditionalInfo(400, payload)) + .isEqualTo(expected); + } } diff --git a/vid-app-common/src/test/java/org/onap/vid/services/AsyncInstantiationBusinessLogicTest.java b/vid-app-common/src/test/java/org/onap/vid/services/AsyncInstantiationBusinessLogicTest.java index 0749aaf82..a1e4af2c4 100644 --- a/vid-app-common/src/test/java/org/onap/vid/services/AsyncInstantiationBusinessLogicTest.java +++ b/vid-app-common/src/test/java/org/onap/vid/services/AsyncInstantiationBusinessLogicTest.java @@ -1223,7 +1223,8 @@ public class AsyncInstantiationBusinessLogicTest extends AsyncInstantiationBaseT String message = "Failed to create service instance"; return new Object[][]{ {500, message}, - {199, "{\"serviceException\":{\"messageId\":\"SVC2000\",\"text\":\"Error: " + message + "\"}}"} + {400, "{\"requestError\":{\"serviceException\":{\"messageId\":\"SVC0002\",\"text\":\"" + message + "\"}}}"}, + {199, "{\"serviceException\":{\"messageId\":\"SVC2000\",\"text\":\"Error: " + message + "\"}}"}, }; } -- cgit 1.2.3-korg