Publié le :
Test CREATION_INTERNE

Test de la macro _issueasserterrormessage

Ce code est également disponible en : Deutsch English Español
Le script utilise le framework SASUnit pour créer un scénario de test. Il définit un cas de test unique qui initialise le test, active la journalisation Log4SAS© (`g_UseLog4SAS© = 1`), puis appelle la macro `_issueasserterrormessage` avec un message d'erreur spécifique ('Dies ist meine Fehlermeldung!'). Enfin, il utilise les assertions SASUnit (`%assertLog`, `%assertLogMsg`) pour vérifier que le log contient exactement une erreur et que le message d'erreur généré est bien celui attendu par le test.
Analyse des données

Type : CREATION_INTERNE


Ce script ne manipule pas de données au sens traditionnel (tables SAS). Il génère des conditions de test et vérifie le contenu du journal SAS (log). Le message d'erreur est une donnée interne au test générée par le script lui-même.

1 Bloc de code
Exécution de macro SASUnit
Explication :
Initialise un nouveau scénario de test dans le framework SASUnit avec une description spécifiée. Cette macro prépare l'environnement pour une série de cas de test.
Copié !
1%initScenario (i_desc=Test of _issueasserterrormessage.sas);
2 
2 Bloc de code
Exécution de macro SASUnit
Explication :
Ce bloc définit et invoque la macro `testcase`. Cette macro configure un environnement de test spécifique en activant la variable globale `g_UseLog4SAS` pour potentiellement utiliser Log4SAS, initialise un cas de test SASUnit, appelle la macro `_issueasserterrormessage` avec un message d'erreur, puis utilise les assertions SASUnit (`%assertLog`, `%assertLogMsg`) pour vérifier que l'appel a généré une erreur unique dans le log et que le message d'erreur correspond à celui attendu. La définition de la macro est incluse car elle encapsule la logique complète du cas de test.
Copié !
1%macro testcase(i_object=_issueasserterrormessage.sas, i_desc=%str(Call with logging level Info, which is default));
2 /*****************
3 documentation
4 ******************
5 setup [...]
6 call [...]
7 assert [...]
8 *****************/
9 
10 %let g_UseLog4SAS = 1;
11
12 /* start testcase */
13 %initTestcase(i_object=&i_object., i_desc=&i_desc.);
14 
15 /* call */
16 %_issueasserterrormessage(Dies ist meine Fehlermeldung!);
17 
18 %endTestcall()
19 
20 /* assert */
21 %assertLog (i_errors=1, i_warnings=0);
22 %assertLogMsg (i_logMsg=^ERROR: Dies ist meine Fehlermeldung!);
23 
24 /* end testcase */
25 %endTestcase()
26%mend testcase; %testcase;
3 Bloc de code
Exécution de macro SASUnit
Explication :
Termine le scénario de test SASUnit, consolidant les résultats de tous les cas de test exécutés dans ce scénario.
Copié !
1%endScenario();
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 2010-2023 HMS Analytical Software GmbH, http://www.analytical-software.de This file is part of SASUnit, the Unit testing framework for SAS(R) programs. For copyright information and terms of usage under the GNU Lesser General Public License see included file README.md or https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.