### Question:
StringProcessor { public static String ellipseString(String data, int max_length) { if (data == null) { return data; } StringBuilder sb = new StringBuilder(); if (StringUtils.isNotBlank(data)) { String tokens[] = data.split(" "); boolean forceProcess = false; for (String token : tokens) { if ("<a".equalsIgnoreCase(token)) { forceProcess = true; } if (forceProcess && "</a>".contains(token)) { forceProcess = false; } if (forceProcess || sb.length() <= max_length) { sb.append(token).append(" "); } } sb.append("..."); } return sb.toString(); }  static ObjectMapper defaultObjectMapper(); static String getResourceNameFromUrl(String url); static String getJustFileName(String originalFilename); static List<String> extractUrls(String text); static String stripeExtendedChars(String data); static String createHrefUrls(String text); static String createHrefUrls(String text, boolean showFullURL); static String stripeFieldJSON(String json, Set<String> fieldsToKeep); static String printObject(Object o); static String ellipseString(String data, int max_length); static String blankIfNull(String text); static String blankIfNull(Object text); static String nullIfBlank(String text); static Boolean isEmail(String text); static String stripHtml(String text); static BigDecimal archtecureCodeToDecimal(String code); static String urlEncode(String value); static String urlDecode(String value); static String parseStackTraceHtml(Throwable throwable); static String enclose(String s); static String enclose(String s, String enclose); static String enclose(String s, String encloseStart, String encloseEnd); static String encodeWebKey(String key); static String cleanEntityKey(String key); static String getFileExtension(String filename); static String cleanFileName(String badFileName); static String puralize(int size, String nonPuralForm, String puralForm); static String getHexFromBytes(byte[] bytes); static String decodeHexCharEscapes(String input); static boolean stringIsNotBlank(String input); static String formatForFilename(String input); static String uniqueId(); static String truncateHTML(String html, int maxCharCount); static Map<String, List<String>> splitURLQuery(String query); static String removeBadStyles(String html); static String escapeHtmlQuotes(String input);  }### Answer:
@Test public void testEllipseString() { System.out.println("eclipseString"); String data = "This is a test string that is really long. Does it all show?"; String result = StringProcessor.ellipseString(data, 20); System.out.println(result); if (result.endsWith("...") == false) { fail("It didn't eclispe the text"); } }