Publicado el :
Prueba CREATION_INTERNE

Prueba de la macro _checkRunEnvironment.sas

Este código también está disponible en: Français Deutsch English
Este script SAS© está diseñado para probar la macro `_checkRunEnvironment.sas©` de la biblioteca SASUnit. Inicializa un escenario de prueba y un caso de prueba único titulado 'Successful call'. Antes de llamar a la macro a probar, el script guarda el estado actual de las opciones del sistema MPRINT y MLOGIC, y luego las activa para permitir una depuración detallada de la ejecución de la macro. Después de la llamada a `_checkRunEnvironment.sas©`, las opciones MPRINT y MLOGIC se restauran a su estado inicial. El script utiliza luego las macros de aserción `%assertEquals` para verificar que la macro probada devuelve un valor de éxito (0) y `%assertLogMsg` para confirmar que ciertos mensajes relacionados con sistemas operativos (Windows, Linux) o versiones de SAS© (9.4) no están presentes en el log, lo que indica que el entorno de prueba se identifica correctamente o que estas condiciones específicas no se cumplen. El escenario y el caso de prueba se cierran a continuación.
Análisis de datos

Type : CREATION_INTERNE


El script no manipula datos externos persistentes. Interactúa con el entorno SAS a través de opciones del sistema (`MPRINT`, `MLOGIC`) y variables macro (`g_cre_result`, `l_mprint`, `l_mlogic`) creadas y gestionadas dinámicamente durante la ejecución de la prueba. El objetivo principal no es la transformación de datos, sino la validación del comportamiento de una macro del sistema.

1 Bloque de código
Inicialización del escenario de prueba
Explicación :
Este bloque inicializa el escenario de prueba con una descripción clara de su objetivo. También declara la variable macro global `g_cre_result` y la inicializa a -1. Esta variable se utilizará para capturar el código de retorno de la macro `_checkRunEnvironment.sas` probada.
¡Copiado!
1%initScenario(i_desc=Test of _checkRunEnvironment.sas);
2 
3%global g_cre_result;
4%let g_cre_result=-1;
2 Bloque de código
Ejecución y validación del caso de prueba
Explicación :
Este bloque define un caso de prueba para una llamada exitosa de `_checkRunEnvironment.sas`. Primero guarda los estados actuales de las opciones del sistema `MPRINT` y `MLOGIC`, luego las activa para el diagnóstico. La macro `_checkRunEnvironment` es llamada, y su resultado se almacena en `g_cre_result`. Las opciones `MPRINT` y `MLOGIC` se restauran a su estado inicial. Finalmente, se utilizan aserciones: `%assertEquals` verifica que el resultado de la macro sea 0 (indicando éxito), y `%assertLogMsg` confirma la ausencia de mensajes específicos en el log, garantizando que el entorno se evalúa correctamente.
¡Copiado!
1%initTestcase(i_object = _checkRunEnvironment.sas, i_desc = Successful call)
2 
3%let l_mprint = %sysfunc(getoption(MPRINT));
4%let l_mlogic = %sysfunc(getoption(MLOGIC));
5 
6options mprint mlogic;
7 
8%let g_cre_result=%_checkRunEnvironment;
9 
10options &l_mprint. &l_mlogic.;
11 
12%endTestcall();
13 
14%assertEquals(i_actual =&g_cre_result.
15 ,i_expected =0
16 ,i_desc =OS and SAS Version are valid
17 );
18%assertLogMsg (i_logmsg=NE WIN);
19%assertLogMsg (i_logmsg=NE LINUX);
20%assertLogMsg (i_logmsg=NE 9.4);
21 
22%endTestcase();
3 Bloque de código
Finalización del escenario de prueba
Explicación :
Este bloque marca el final formal del escenario de prueba, cerrando todas las operaciones de prueba en curso y consolidando los resultados.
¡Copiado!
1%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/.