TIPCommon.validation
Le module TIPCommon.validation contient la classe ParameterValidator, un outil essentiel pour garantir l'intégrité des données dans les intégrations. Il automatise le processus de vérification des types d'entrée, d'application des contraintes (telles que les plages numériques ou les formats d'adresse e-mail) et de fourniture de valeurs de secours sécurisées pour éviter les plantages d'exécution.
Classe ParameterValidator
La classe ParameterValidator fournit une interface standardisée pour valider différents types de paramètres. Chaque méthode accepte un nom et une valeur de paramètre, et renvoie la valeur validée dans son type Python approprié. Si la validation échoue et qu'aucun default_value n'est fourni, une ParameterValidationError est générée.
Exemple d'utilisation
Pour utiliser le validateur, initialisez-le avec l'objet SDK siemplify :
from TIPCommon.validation import ParameterValidator
# Initialize the validator
validator = ParameterValidator(siemplify)
# Validate and cast strings to specific types
validated_float = validator.validate_float(param_name='Threshold', value='3.7')
validated_int = validator.validate_integer(param_name='Retry Count', value='5')
Validation numérique et des limites
Ces méthodes garantissent que les entrées numériques se situent dans les limites attendues et sont correctement converties en types Python appropriés.
| Fonction | Paramètres | Description et retours |
|---|---|---|
validate_float() |
|
Renvoie float
Valide qu'une valeur peut être convertie en float. Utile pour les seuils ou les scores de probabilité. |
validate_integer() |
|
Renvoie int
Valide et convertit une valeur en nombre entier. |
validate_range() |
|
Renvoie int
Garantit qu'un entier se trouve dans la plage inclusive définie par |
validate_percentage() |
|
Renvoie int
Garantit que la valeur est un entier compris entre |
validate_non_negative() |
|
Renvoie int
Garantit que la valeur est un nombre entier |
validate_non_zero() |
|
Renvoie int
S'assure que la valeur est un nombre entier et n'est pas égale à |
validate_positive() |
|
Renvoie int
Garantit que la valeur est un nombre entier |
validate_lower_limit() |
|
Renvoie int
Garantit que la valeur |
validate_upper_limit() |
|
Renvoie int
Garantit que la valeur |
Structure des données et validation des chaînes
Ces méthodes valident des types d'entrée plus complexes, tels que des chaînes délimitées, des objets JSON et des formats spécifiques comme les adresses e-mail.
| Fonction | Paramètres | Description et retours |
|---|---|---|
validate_csv() |
|
Renvoie list
Divise une chaîne en une liste à l'aide du délimiteur. Si |
validate_json() |
|
Renvoie dict | list
Analyse une chaîne en objet JSON. Génère une erreur si la chaîne n'est pas un code JSON valide. |
validate_email() |
|
Renvoie str
Valide que la chaîne fournie respecte un format d'adresse e-mail standard. |
validate_ddl() |
|
Renvoie str
Valide que l'entrée correspond à l'une des valeurs d'une LDD définie. |
validate_severity() |
|
Renvoie int
Valide une entrée de gravité de plate-forme. Mappe correctement les libellés de gravité standards de la plate-forme (tels que "Élevée") et leurs rangs entiers équivalents. |
Configuration de la validation globale
Chaque méthode de validation de la classe ParameterValidator accepte les arguments de mot clé facultatifs suivants pour contrôler le comportement en cas d'échec ou pour le débogage :
default_value: si cette valeur est fournie, elle est renvoyée au lieu de générer uneParameterValidationErroren cas d'échec de la validation.print_value: (bool) Lorsque la valeur estTrue, la valeur non valide qui a provoqué l'échec est incluse dans le message du journal. La valeur par défaut estTrue.print_error: (bool) Lorsque la valeur estTrue, le message d'exception spécifique est inclus dans les journaux de la plate-forme. La valeur par défaut estFalse.