Publié le :
Macro CREATION_INTERNE

Assertion d'erreur attendue (Framework FUTS)

Ce code est également disponible en : Deutsch English Español
Cette macro vérifie l'état d'une variable globale `FUTS_EXPECTED_ERROR`. Elle est généralement appelée après une séquence de code censée provoquer une erreur. Si la variable globale n'est pas vide (signifiant qu'une erreur était attendue mais ne semble pas avoir été capturée ou traitée), la macro déclenche un événement (via `%generate_event`) pour signaler l'échec du test avec le message 'Did not get expected error'. Elle incrémente également le compteur global de tests.
Analyse des données

Type : CREATION_INTERNE


Utilisation de variables macro globales (&FUTS_EXPECTED_ERROR, &futs_tst_cnt) pour gérer l'état et le comptage des tests.

1 Bloc de code
MACRO DEFINITION
Explication :
Définition de la macro. Elle incrémente le compteur de tests, vérifie si une erreur était attendue via la variable globale, et si oui (condition d'échec du test), appelle la macro `%generate_event` pour rapporter l'anomalie.
Copié !
1%macro assert_error_occurred(
2 MESSAGE=Did not get expected error &FUTS_EXPECTED_ERROR,
3 TYPE=,
4 LEVEL=,
5 ATTACHDATA=,
6 ATTACHFILE=,
7 METRIC=,
8 PROPERTIES=,
9 ON_EVENT=,
10 DESCRIPTION=, ABORT= );
11 
12%global FUTS_EXPECTED_ERROR;
13 
14%let futs_tst_cnt = %eval(&futs_tst_cnt.+1);
15 
16%IF &FUTS_EXPECTED_ERROR ne %str() %THEN
17 %generate_event(TYPE=&TYPE, LEVEL=&LEVEL,
18 MESSAGE=&MESSAGE,
19 ATTACHDATA=&ATTACHDATA, ATTACHFILE=&ATTACHFILE,
20 METRIC=&METRIC,
21 PROPERTIES=&PROPERTIES,
22 ON_EVENT=&ON_EVENT,
23 DESCRIPTION=&DESCRIPTION, ABORT=&ABORT);
24 
25%mend assert_error_occurred;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Copyright (c) 2015 John Jacobs. All rights reserved.


Banner
Le Conseil de l'Expert
Expert
Simon
Expert SAS et fondateur.
« L'utilisation d'assertions pour vérifier l'échec attendu d'un programme est une pratique fondamentale du Test-Driven Development (TDD), ici appliquée à l'écosystème SAS via le framework FUTS. La macro %assert_error_occurred joue un rôle de "garde-fou" : elle s'assure qu'une condition d'erreur spécifique a bien été déclenchée par le code testé. Sa pertinence repose sur le monitoring de la variable globale FUTS_EXPECTED_ERROR. Si cette variable n'a pas été réinitialisée par le gestionnaire d'exceptions, cela signifie que le test a échoué car l'erreur attendue ne s'est pas produite. C'est un outil indispensable pour valider la robustesse de vos macros face à des entrées invalides ou des environnements dégradés. »