package org.jembi; import static org.mockito.Mockito.*; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import org.mule.api.MuleMessage; public class Util { public static String getResourceAsString(String resource) throws IOException { InputStream is = Util.class.getClassLoader().getResourceAsStream(resource); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); String line = null; StringBuilder stringBuilder = new StringBuilder(); String ls = System.getProperty("line.separator"); while((line = reader.readLine()) != null ) { stringBuilder.append(line); stringBuilder.append(ls); } return stringBuilder.toString(); } public static MuleMessage buildMockMuleResponse(boolean successful) { return buildMockMuleResponse(successful, null); } public static MuleMessage buildMockMuleResponse(boolean successful, Object payload) { MuleMessage mockResponse = mock(MuleMessage.class); when(mockResponse.getInboundProperty(eq("success"))).thenReturn(successful ? "true" : "false"); try { if (payload!=null) { if (payload instanceof String) when(mockResponse.getPayloadAsString()).thenReturn((String)payload); when(mockResponse.getPayload()).thenReturn(payload); } } catch (Exception e) { /* Quiet! */ } return mockResponse; } /** * Removes newlines and whitespace around tags */ public static String trimXML(String xml) { return xml.replace("\n", "").replaceAll(">\\s*<", "><"); } }