@Test public void testEsquemaFamiliarCasoOk() throws IOException, SAXException { // Creo los mocks testKit.replaceService( "TipoGrupoFamiliar", new ExchangeHandler() { @Override public void handleMessage(Exchange exchange) throws HandlerException { String request = exchange.getMessage().getContent(String.class); LOG.info("getEsquemaFamiliar provider:" + request); try { // Verifico que el request que entra al mock sea el esperado XMLAssert.assertXMLEqual( CotizadorPlanesUnitTest.loadFile( "unitTest/providerMockExpectedRequest/getExquemaFamiliarProviderExpectedRequest.xml"), request); // Genero la respuesta mockeada String mockResponse = CotizadorPlanesUnitTest.loadFile( "unitTest/providerMockResponse/getExquemaFamiliarProviderResponse.xml"); LOG.info("mockResponse:" + mockResponse); // Envio la respuesta mockeada exchange.send(exchange.createMessage().setContent(mockResponse)); } catch (AssertionError a) { LOG.error("El request al provider no valida con el esperado", a); throw new HandlerException(a); } catch (Exception e) { LOG.error("Sucedió un error al obtener el archivo", e); throw new HandlerException(e); } } @Override public void handleFault(Exchange exchange) { throw new RuntimeException("Sucedio error inesperado"); } }); // Ejecuto el servicio Message response = getEsquemaFamiliar.sendInOut( CotizadorPlanesUnitTest.loadFile( "unitTest/serviceRequest/getEsquemaFamiliarServiceRequest.xml")); // Verifico los resultados XMLAssert.assertXMLEqual( CotizadorPlanesUnitTest.loadFile( "unitTest/serviceExpectedResponse/getExquemaFamiliarServiceExpectedResponse.xml"), response.getContent(String.class)); }
@Test public void testEsquemaFamiliarCasoError() throws IOException { // Creo los mocks testKit.replaceService( "TipoGrupoFamiliar", new ExchangeHandler() { @Override public void handleMessage(Exchange exchange) throws HandlerException { throw new RuntimeException("Error en el provider!"); } @Override public void handleFault(Exchange exchange) { throw new RuntimeException("Sucedio error inesperado"); } }); try { // Ejecuto el servicio getEsquemaFamiliar.sendInOut( CotizadorPlanesUnitTest.loadFile( "unitTest/serviceRequest/getEsquemaFamiliarServiceRequest.xml")); } catch (InvocationFaultException e) { // Verifico que el servicio haya lanzado una excepción assertTrue(e.getFaultMessage().toString().contains("Error en el provider!")); } }
@Test public void testPlanesCasoError() throws IOException { // Creo los mocks testKit.replaceService( "PlanesComercialesSocio", new ExchangeHandler() { @Override public void handleMessage(Exchange exchange) throws HandlerException { throw new RuntimeException("Error en el provider!"); } @Override public void handleFault(Exchange exchange) { throw new RuntimeException("Sucedio error inesperado"); } }); try { // Ejecuto el servicio getPlanes.sendInOut( CotizadorPlanesUnitTest.loadFile("unitTest/serviceRequest/getPlanesServiceRequest.xml")); } catch (InvocationFaultException e) { assertTrue(e.getFaultMessage().toString().contains("Error en el provider!")); } }