Publicado el :
Prueba CREATION_INTERNE

Prueba de la macro _createScnLogConfigTemplate

Este código también está disponible en: Français Deutsch English
En espera de validación
Este script SAS© es una prueba unitaria que utiliza el framework SASUnit. Inicializa un escenario de prueba y luego ejecuta un caso de prueba específico. El caso de prueba llama a la macro `_createScnLogConfigTemplate` con parámetros definidos para crear un archivo de plantilla de configuración de registro en la biblioteca de trabajo (WORK). Luego procede con aserciones para verificar que el archivo ha sido creado (existencia y contenido) y que no contiene ningún error o advertencia en el registro SAS©. Finalmente, limpia el archivo creado después de la prueba.
Análisis de datos

Type : CREATION_INTERNE


El script no consume datos externos no gestionados. Crea un archivo de plantilla de configuración de registro en la biblioteca temporal 'WORK' y utiliza una ruta de referencia (g_refdata) que es una variable de macro SASUnit que se supone que apunta a datos de prueba gestionados por el framework.

1 Bloque de código
Macro SASUnit
Explicación :
Inicializa el escenario de prueba global y define la macro 'testcase' que encapsula la lógica de la prueba unitaria. El parámetro 'i_desc' proporciona una descripción del escenario, identificando el objetivo de la prueba.
¡Copiado!
1%initScenario (i_desc=Test of _createScnLogConfigTemplate.sas);
2%macro testcase(i_object=_createScnLogConfigTemplate.sas, i_desc=%str(Correct call));
3 
2 Bloque de código
Macro _createScnLogConfigTemplate Data
Explicación :
Este bloque inicializa el caso de prueba específico y llama a la macro `_createScnLogConfigTemplate`. Esta macro se prueba para asegurar que genera correctamente un archivo de configuración de registro SASUnit. El archivo se crea en la carpeta de trabajo SAS (`WORK`) con el nombre `sasunit.scnlogconfig.xx.template.xml`. Las rutas de las carpetas de registro y el idioma se especifican, siendo 'XX' un marcador de posición para la prueba.
¡Copiado!
1 /* start testcase */
2 %initTestcase(i_object=&i_object., i_desc=&i_desc.);
3 
4 /* call */
5 %_createScnLogConfigTemplate(i_projectBinFolder =%sysfunc(pathname(WORK))
6 ,i_sasunitLogFolder =./logs
7 ,i_sasunitScnLogFolder =./scnLogs
8 ,i_sasunitLanguage =XX
9 );
10 
11 %endTestcall()
3 Bloque de código
Macro SASUnit
Explicación :
Este bloque contiene las aserciones que verifican el éxito de la prueba. `%assertLog` asegura que no se hayan emitido advertencias o errores en el registro SAS. `%assertEquals` verifica que el archivo de plantilla se haya creado correctamente utilizando la función `fileexist`. `%assertText` compara el contenido del archivo generado con un archivo de referencia especificado por la variable de macro `g_refdata` para validar su conformidad.
¡Copiado!
1 /* assert */
2 %assertLog(i_errors=0, i_warnings=0);
3 %assertEquals (i_actual =%sysfunc(fileexist(%sysfunc(pathname(WORK))/sasunit.scnlogconfig.xx.template.xml))
4 ,i_expected=1
5 ,i_desc =New scn log config template xml file must exist
6 );
7 
8 %assertText (i_expected = &g_refdata./sasunit.scnlogconfig.xx.template.xml
9 ,i_actual = %sysfunc(pathname(WORK))/sasunit.scnlogconfig.xx.template.xml
10 ,i_desc = Scn-Log config template created correctly
11 );
12
13 /* end testcase */
14 %endTestcase()
4 Bloque de código
Fonction SYSCALL / Nettoyage
Explicación :
Este bloque gestiona la limpieza después de la prueba. Define un fileref `fdel` que apunta al archivo de plantilla creado, luego usa `%sysfunc(fdelete(fdel))` para eliminar este archivo. `filename fdel clear;` libera el fileref. Las líneas finales (`%mend testcase; %testcase; %endScenario();`) marcan el final de la macro de prueba y del escenario global de SASUnit.
¡Copiado!
1 filename fdel "%sysfunc(pathname(WORK))/sasunit.scnlogconfig.xx.template.xml";
2 %put %sysfunc(fdelete(fdel));
3 filename fdel clear;
4%mend testcase; %testcase;
5 
6%endScenario();
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información 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/.