4D v14.3

ASSERT

Accueil

 
4D v14.3
ASSERT

ASSERT 


 

ASSERT ( expressionBool {; texteMessage} ) 
Paramètre Type   Description
expressionBool  Booléen in Expression booléenne
texteMessage  Texte in Texte du message d’erreur

La commande ASSERT permet de placer une assertion dans le code d’une méthode.

Une assertion est une instruction insérée dans le code et chargée de détecter des éventuelles anomalies au cours de son exécution. Le principe consiste à vérifier qu’une expression est vraie à un instant donné et, dans le cas contraire, produire une exception. Les assertions sont surtout utilisées pour détecter des cas qui ne devraient jamais arriver en temps normal. Elles servent donc essentiellement à détecter des bogues de programmation. Il est possible d’activer ou de désactiver globalement toutes les assertions d’une application (par exemple en fonction du type de version) via la commande FIXER ACTIVATION ASSERTIONS

Pour plus d’informations sur les assertions en programmation, reportez-vous à l’article (en anglais) qui leur est consacré sur Wikipedia : http://en.wikipedia.org/wiki/Assertion_(computing)

La commande ASSERT évalue l’expression booléenne passée en paramètre. Si l’expression est vraie, il ne se passe rien. Si l’expression est fausse, la commande déclenche l’erreur -10518 et affiche le texte de l’assertion précédée du message "Fausse assertion :". Vous pouvez intercepter cette erreur via une méthode installée par la commande APPELER SUR ERREUR, afin par exemple d’alimenter un fichier d’historique. 

La commande accepte en deuxième paramètre optionnel un texte qui sera affiché dans le message d’erreur à la place du texte de l’expression booléenne si elle est fausse.

Avant d’effectuer des opérations sur un enregistrement, le développeur souhaite s’assurer qu’il est bien chargé en lecture écriture :

 LECTURE ECRITURE([Table 1])
 CHARGER ENREGISTREMENT([Table 1])
 ASSERT(Non(Enregistrement verrouille([Table 1])))  //déclenche l'erreur  -10518  si l'enregistrement est verrouillé

Une assertion peut permettre de tester les paramètres passés à une méthode projet pour détecter des valeurs aberrantes. Dans cet exemple, un message d’alerte personnalisé est utilisé.

  // Méthode qui retourne le numéro d'un client en fonction de son nom passé dans  $1
 C_TEXTE($1// Nom du client
 ASSERT($1#"";"Recherche d’un nom de client vide")
     // Un nom vide dans ce cas est une valeur aberrante
     // Si assertion fausse, affichera dans la boîte de dialogue d'erreur :
     // "Fausse assertion : Recherche d’un nom de client vide"

 
PROPRIÉTÉS 

Produit : 4D
Thème : Interruptions
Numéro : 1129
Nom intl. : ASSERT

Cette commande modifie la variable système Error

 
HISTORIQUE 

Créé : 4D v12

 
VOIR AUSSI  

Asserted
FIXER ACTIVATION ASSERTIONS
Lire activation assertions

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v12.4)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)