@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!"));
    }
  }