49 lines
2.7 KiB
Python
49 lines
2.7 KiB
Python
def soap_error(soap_response): # Testeado
|
|
"""
|
|
Verifica si la respuesta SOAP no contiene errores.
|
|
|
|
Args:
|
|
soap_response: Respuesta del servicio SOAP
|
|
|
|
Returns:
|
|
bool: True si no hay errores, False en caso contrario
|
|
"""
|
|
if '<ns2:tieneError>true</ns2:tieneError>' in soap_response.text:
|
|
return True
|
|
if '<ns3:tieneError>true</ns3:tieneError>' in soap_response.text:
|
|
return True
|
|
if "<mensaje>El Cove o Adenda no existe, no está firmado o no cuenta con la autorización para consultarlo</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<mensaje>El Edocumento no existe, no está firmado o no cuenta con la autorización para consultarlo</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<mensaje>El Pedimento no existe, no está firmado o no cuenta con la autorización para consultarlo</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<mensaje>El número de operación no existe o no está autorizado para consultarlo</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<mensaje>El Cove o Adenda no existe, no está firmado o no cuenta con la autorización para consultarlo</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<ns2:mensaje>No hay información para la búsqueda solicitada</ns2:mensaje>" in soap_response.text:
|
|
return True
|
|
if "<descripcion>El RFC no tiene relación con el eDocument. </descripcion>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : El RFC del usuario es distinto al del certificado.</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : Firma inválida</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : El certificado ha expirado.</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : El certificado ha sido revocado.</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : El certificado no es válido.</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : No se encontró el certificado.</error>" in soap_response.text:
|
|
return True
|
|
if "<error>Firma Electrónica : Error al procesar la firma electrónica.</error>" in soap_response.text:
|
|
return True
|
|
if "<mensaje>unexpected XML tag. expected: {http://tempuri.org/}ConsultaPartidaResponse but found: {http://tempuri.org/}consultaPedimentoResponse</mensaje>" in soap_response.text:
|
|
return True
|
|
if "<ns2:mensaje>El valor de [Número de Operacion] es obligatorio</ns2:mensaje>" in soap_response.text:
|
|
return True
|
|
|
|
# Aquí podrías agregar más lógica para verificar errores específicos en el XML
|
|
return False |