El script implementa dos escenarios de prueba distintos. El primer escenario utiliza el conjunto de datos `sashelp.cars` para ilustrar la conversión al formato `CARDS` y la recreación del conjunto de datos, seguido de una verificación de la integridad de los datos utilizando `PROC COMPARE`. El segundo escenario, por su parte, crea un conjunto de datos binario internamente y aplica el mismo proceso de conversión, recreación y comparación, garantizando la exactitud de los datos binarios. Cada prueba se complementa con una aserción utilizando la macro `mp_assert` para validar formalmente los resultados de las comparaciones de conjuntos de datos.
Análisis de datos
Type : MIXTO
El script utiliza el conjunto de datos integrado `sashelp.cars` y genera un conjunto de datos `work.binarybase` internamente a través de un paso DATA. No hay dependencia de datos externos no gestionados por el script o no procedentes de bibliotecas SAS estándar.
1 Bloque de código
Macro mp_ds2cards y PROC COMPARE
Explicación : Este bloque ilustra la conversión del conjunto de datos `sashelp.cars` en un archivo `CARDS` temporal (`cars.sas`) utilizando la macro `mp_ds2cards`. El conjunto de datos se recrea posteriormente con el nombre `work.test` mediante una instrucción `%inc`. Se utiliza un `PROC COMPARE` para verificar la identidad de los conjuntos de datos originales y recreados, y la macro `mp_assert` valida el resultado de esta comparación.
desc=sashelp.cars is identical except for ds label,
14
outds=work.test_results
15
)
2 Bloque de código
DATA STEP, Macro mp_ds2cards y PROC COMPARE Data
Explicación : Este bloque comienza con la creación de un conjunto de datos `work.binarybase` que contiene una secuencia de datos binarios. Luego se llama a la macro `mp_ds2cards` para convertir `work.binarybase` en un archivo `CARDS` (`c2.sas`), que luego se utiliza para recrear el conjunto de datos bajo `work.binarycompare`. Finalmente, `PROC COMPARE` verifica la identidad perfecta entre el conjunto de datos original y su versión recreada, con `mp_assert` confirmando la ausencia de diferencias (código de retorno `SYSINFO=0`).
¡Copiado!
data work.binarybase;
format bin $hex500. z $hex.;
do x=1 to 250;
z=byte(x);
bin=trim(bin)!!z;
output;
end;
run;
%mp_ds2cards(base_ds=work.binarybase
, showlog=YES
, cards_file="%sysfunc(pathname(work))/c2.sas"
, tgt_ds=work.binarycompare
, append=
)
%inc "%sysfunc(pathname(work))/c2.sas"/source2 lrecl=32767;
proc compare base=work.binarybase compare=work.binarycompare;
run;
%mp_assert(
iftrue=(&sysinfo=0),
desc=work.binarybase dataset is identical,
outds=work.test_results
)
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 Este archivo forma parte de SASUnit, el marco de prueba unitaria para programas SAS(R). Para obtener información sobre derechos de autor y condiciones de uso bajo la Licencia Pública General Menor de GNU, consulte el archivo README.md incluido o https://github.com/HMS-Analytical-Software/SASUnit/wiki/readme/.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.