+ @Test
+ public void thatErrorObjectCanBeRetrieved() throws ErrorObjectNotFoundException {
+ ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_3000");
+ assertEquals("3000", errorObject.getErrorCode());
+ assertEquals("3000", errorObject.getRESTErrorCode());
+ assertEquals("Invalid input performing %1 on %2", errorObject.getErrorText());
+ assertEquals("2", errorObject.getCategory());
+ assertEquals("INFO", errorObject.getSeverity());
+ }
+
+ @Test
+ public void thatInvalidErrorCodeWillReturnDefaultException() throws ErrorObjectNotFoundException {
+ ErrorObject errorObject = ErrorLogHelper.getErrorObject("AAI_1234");
+ assertEquals("4000", errorObject.getErrorCode());
+ assertEquals("3002", errorObject.getRESTErrorCode());
+ assertEquals("Internal Error", errorObject.getErrorText());
+ assertEquals("4", errorObject.getCategory());
+ assertEquals("ERROR", errorObject.getSeverity());
+ }
+
+ @Test
+ public void thatInvalidMediaTypeWillReturnInvalidAcceptHeaderException() throws ErrorObjectNotFoundException, JsonMappingException, JsonProcessingException {
+ String errorResponse = ErrorLogHelper.getRESTAPIErrorResponse(Collections.singletonList(MediaType.TEXT_PLAIN_TYPE), new AAIException(), new ArrayList<>());
+
+ Fault restResponse = objectMapper.readValue(errorResponse, Fault.class);
+ assertNotNull(restResponse);
+
+ ErrorMessage serviceErrorMessage = restResponse.getRequestError().get(ExceptionType.SERVICE);
+ List<String> variables = serviceErrorMessage.getVariables();
+ assertEquals("SVC3000", serviceErrorMessage.getMessageId());
+ assertEquals("null", variables.get(0));
+ assertEquals("null", variables.get(1));
+ assertEquals("Invalid Accept header", variables.get(2));
+ assertEquals("4.0.4014", variables.get(3));
+ }
+
+ @Test
+ public void thatRestApiInfoResponseCanBeRetrieved() {
+ Map<AAIException, ArrayList<String>> aaiExceptionsMap = new HashMap<>();
+ aaiExceptionsMap.put(new AAIException("AAI_0002", "OK"), new ArrayList<String>(Arrays.asList("someApp", "someTransactionId")));
+ Info info = ErrorLogHelper.getRestApiInfoResponse(aaiExceptionsMap);
+ ErrorMessage errorMessage = info.getErrorMessages().get(0);
+ assertEquals("INF0001", errorMessage.getMessageId());
+ assertEquals("Success X-FromAppId=%1 X-TransactionId=%2 (msg=%3) (ec=%4)", errorMessage.getText());
+ assertEquals("Successful health check:OK", errorMessage.getVariables().get(0));
+ assertEquals("0.0.0002", errorMessage.getVariables().get(1));
+ }
+