package eu.choreos.vv.interceptor; import static org.junit.Assert.assertEquals; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import eu.choreos.vv.util.WebServiceController; public class RequestDispatcherTest { private final String SIMPLE_STORE_WSDL = "http://localhost:1234/SimpleStore?wsdl"; @BeforeClass public static void setUp(){ WebServiceController.deployService(); } @AfterClass public static void tearDown(){ WebServiceController.undeployService(); } @Test public void shouldInvokeTheWSCorrectly() throws Exception { InterceptedMessagesRegistry.getInstance().registerWsdl(SIMPLE_STORE_WSDL); String operationName = "searchByArtist"; String requestContent = MessageTestData.getRequestContent(); String expectedResponse = MessageTestData.getResponseContent(); String actualResponse = RequestDispatcher.getResponse(SIMPLE_STORE_WSDL, operationName, requestContent); assertEquals(expectedResponse.replace(" ", ""), actualResponse.replace(" ", "")); } @Test public void shouldRegisterMessagesIntoTheRegistry() throws Exception { InterceptedMessagesRegistry registry = InterceptedMessagesRegistry.getInstance(); registry.registerWsdl(SIMPLE_STORE_WSDL); String operationName = "searchByArtist"; String requestContent = MessageTestData.getRequestContent(); RequestDispatcher.getResponse(SIMPLE_STORE_WSDL, operationName, requestContent); assertEquals(requestContent.replace(" ", ""), registry.getMessages(SIMPLE_STORE_WSDL).get(0).replace(" ", "")); } }