Veröffentlicht am :
Macro CREATION_INTERNE

Test der Makro mf_getvarcount

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Dieses Programm generiert lokale Testdaten, die eine Mischung aus numerischen und Zeichenvariablen enthalten. Anschließend wird eine Reihe von Assertions (mittels des Makros %mp_assert) ausgeführt, um zu überprüfen, ob das Makro %mf_getvarcount die Variablen korrekt zählt, sowohl global als auch nach Typ (numerischer oder Zeichenfilter).
Datenanalyse

Type : CREATION_INTERNE


Die Testtabellen (work.all, work.nums, work.chars) werden zu Beginn des Skripts durch einen Data Step generiert.

1 Codeblock
DATA STEP Data
Erklärung :
Erstellung der Testtabellen in der WORK-Bibliothek mit definierten Variablenstrukturen (gemischt, nur numerisch, nur Zeichen).
Kopiert!
1DATA work.all work.nums(keep=num1 num2) work.chars(keep=char1 char2);
2 LENGTH num1 num2 8 char1 char2 char3 $4;
3 call missing (of _all_);
4 OUTPUT;
5RUN;
2 Codeblock
MACRO
Erklärung :
Sequenz von Unit-Tests. Verwendet %mp_assertscope zur Überprüfung der Sauberkeit der Makroumgebung und %mp_assert zur Validierung der Rückgaben der Funktion %mf_getvarcount gemäß verschiedener Filterkriterien.
Kopiert!
1%mp_assertscope(SNAPSHOT)
2%put scope check:%mf_getvarcount(work.all);
3%mp_assertscope(COMPARE)
4 
5%mp_assert(
6 iftrue=(%mf_getvarcount(work.all)=5),
7 desc=%str(Checking for mixed vars),
8 outds=work.test_results
9)
10 
11%mp_assert(
12 iftrue=(%mf_getvarcount(work.all,typefilter=C)=3),
13 desc=%str(Checking for char in mixed vars),
14 outds=work.test_results
15)
16/* ... suite des assertions ... */
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.