Publié le :
Test CREATION_INTERNE

Test de la macro _detectSymbols

Ce code est également disponible en : Deutsch English Español
En attente de validation
Ce test utilise le framework SASUnit. Il initialise un scénario de test et déclare des variables macro globales `g_my_error`, `g_my_warning` et `g_my_note`. Ces variables sont ensuite réinitialisées à `_NONE_`. La macro `_detectSymbols` est appelée avec ces variables en tant que paramètres de sortie. Le script vérifie ensuite, via des assertions, que `g_my_error` a été définie à 'ERROR', `g_my_warning` à 'WARNING' et `g_my_note` à 'NOTE', attestant ainsi du bon fonctionnement de `_detectSymbols`. Ce code est compatible avec SAS© Viya 4 car il utilise des fonctionnalités standard du langage macro SAS©.
Analyse des données

Type : CREATION_INTERNE


Aucune donnée externe n'est utilisée. Le script travaille avec des variables macro globales définies et manipulées directement au sein du code pour simuler et vérifier les états des symboles (erreur, avertissement, note).

1 Bloc de code
Déclarations et Initialisations Macro Data
Explication :
Ce bloc initialise le scénario de test et déclare les variables macro globales `g_my_error`, `g_my_warning` et `g_my_note`. Ces variables sont ensuite initialisées à `_NONE_` avant l'appel de la macro testée, afin de s'assurer d'un état de départ connu.
Copié !
1%initScenario (i_desc=Test of _detectSymbols.sas)
2 
3%global
4 g_my_error
5 g_my_warning
6 g_my_note
7;
8 
9%let g_my_error = _NONE_;
10%let g_my_warning = _NONE_;
11%let g_my_note = _NONE_;
2 Bloc de code
Exécution du Cas de Test
Explication :
Le cas de test est défini et la macro `_detectSymbols` est appelée. Les variables macro globales précédemment déclarées sont passées en référence (`r_error_symbol`, `r_warning_symbol`, `r_note_symbol`), permettant à `_detectSymbols` de modifier leurs valeurs en fonction de sa logique interne. `%endTestcall` marque la fin de l'exécution du code testé.
Copié !
1%initTestcase(i_object=_detectSymbols.sas, i_desc=Test with correct call);
2%_detectSymbols(r_error_symbol=g_my_error, r_warning_symbol=g_my_warning, r_note_symbol=g_my_note);
3%endTestcall;
4 
3 Bloc de code
Assertions SASUnit
Explication :
Trois assertions `%assertEquals` sont utilisées pour vérifier que la macro `_detectSymbols` a correctement mis à jour les variables macro globales. Il est attendu que `g_my_error` contienne 'ERROR', `g_my_warning` contienne 'WARNING' et `g_my_note` contienne 'NOTE'. `%endTestcase` clôture le cas de test individuel.
Copié !
1%assertEquals (i_actual = &g_my_error.
2 ,i_expected = ERROR
3 ,i_desc = ERROR-Symbol is SET properly
4 );
5
6%assertEquals (i_actual = &g_my_warning.
7 ,i_expected = WARNING
8 ,i_desc = WARNING-Symbol is SET properly
9 );
10%assertEquals (i_actual = &g_my_note.
11 ,i_expected = NOTE
12 ,i_desc = NOTE-Symbol is SET properly
13 );
14%endTestcase;
4 Bloc de code
Fin de Scénario SASUnit
Explication :
Ce bloc marque la fin du scénario de test global défini par `%initScenario`. C'est une commande de clôture standard du framework SASUnit.
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. Ce fichier fait partie de SASUnit, le framework de test unitaire pour les programmes SAS(R). Pour les informations de copyright et les conditions d'utilisation sous la GNU Lesser General Public License, voir le fichier inclus README.md ou https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.