Todos los datos utilizados para las pruebas se definen directamente en el script a través de bloques `datalines4` dentro de `DATA STEP`.
1 Bloque de código
DATA STEP Data
Explicación : Este bloque `DATA STEP` crea el conjunto de datos `test1`. Lee cadenas de caracteres de `datalines4`, las asigna a la variable `libds`, y luego llama a la macro `%mp_validatecol` con el tipo `LIBDS` para validar si `libds` es un nombre de librería/conjunto de datos SAS válido. Solo se conservan las observaciones donde `is_libds` es 1 (válido), filtrando las entradas no conformes.
¡Copiado!
data test1;
infile datalines4 dsd;
input;
libds=_infile_;
%mp_validatecol(libds,LIBDS,is_libds)
if is_libds=1;
datalines4;
some.libname
!lib.blah
%abort
definite.ok
not.ok!
nineletrs._
;;;;
run;
1
DATA test1;
2
INFILE datalines4 dsd;
3
INPUT;
4
libds=_infile_;
5
%mp_validatecol(libds,LIBDS,is_libds)
6
IF is_libds=1;
7
datalines4;
8
some.LIBNAME
9
!lib.blah
10
%abort
11
definite.ok
12
not.ok!
13
nineletrs._
14
;;;;
15
RUN;
2 Bloque de código
Macro (%mp_assertdsobs)
Explicación : Esta llamada de macro utiliza `%mp_assertdsobs` para verificar que el conjunto de datos `work.test1` contiene exactamente 2 observaciones después de la validación `LIBDS`, confirmando el comportamiento esperado. El resultado de esta aserción se almacena en el conjunto de datos `work.test_results`.
data test2;
infile datalines4 dsd;
input;
infile=_infile_;
%mp_validatecol(infile,ISNUM,is_numeric)
if is_numeric=1;
datalines4;
1
0001
1e6
-44
above are good
the rest are bad
%abort
1&somethingverybad.
&
+-1
;;;;
run;
data test3;
infile datalines4 dsd;
input;
infile=_infile_;
%mp_validatecol(infile,FORMAT,is_format)
if is_format=1;
datalines4;
$.
$format.
$format12.2
somenum.
somenum12.4
above are good
the rest are bad
%abort
1&somethingverybad.
&
+-1
.
a.A
$format12.1b
$format12.1b1
;;;;
run;
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/.
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.