public void validateResponseErrorXml(String xml) { ErrorResponse errorResponse = (ErrorResponse) xstream.fromXML(xml, new ErrorResponse()); Assert.assertTrue("Error response is empty.", errorResponse.getErrors().size() > 0); for (Iterator<ErrorMessage> iter = errorResponse.getErrors().iterator(); iter.hasNext(); ) { ErrorMessage error = iter.next(); Assert.assertFalse("Response Error message is empty.", StringUtils.isEmpty(error.getMsg())); } }
private static <E> PlexusResourceException validationError(String name, Class<E> enumClass) { ErrorMessage err = new ErrorMessage(); err.setId("*"); err.setMsg("No enum const " + enumClass + "." + name); ErrorResponse ner = new ErrorResponse(); ner.addError(err); return new PlexusResourceException( Status.CLIENT_ERROR_BAD_REQUEST, "Configuration error.", ner); }
private void test(String query, String expected) throws IOException { String serviceURIpart = "service/local/lucene/search?q=" + URLEncoder.encode(query, "UTF-8"); log.info("Testing query {}: {}", query, serviceURIpart); String errorPayload = RequestFacade.doGetForText(serviceURIpart, respondsWithStatusCode(400)); log.info("Received 'Bad Request' error: " + errorPayload); MediaType type = MediaType.APPLICATION_XML; XStreamRepresentation representation = new XStreamRepresentation(getXMLXStream(), errorPayload, type); ErrorResponse payload = (ErrorResponse) representation.getPayload(new ErrorResponse()); List errors = payload.getErrors(); assertThat((Collection<?>) errors, hasSize(1)); ErrorMessage error = (ErrorMessage) errors.get(0); String msg = error.getMsg(); msg = msg.replaceAll("Cannot parse '([^']*)':.*", "$1"); log.info("msg: " + msg); assertThat(msg, equalTo(expected)); }