inittestcase.sas

Go to the documentation of this file.
00001  
00028 /* change log
00029    xx-xx-20xx YY  <reason for change>
00030 */ 
00031 
00032 %MACRO initTestcase(
00033    i_object   =  
00034   ,i_desc     =  
00035   ,i_specdoc  =  
00036 );
00037 
00038 %GLOBAL g_inTestcase;
00039 %IF &g_inTestcase EQ 1 %THEN %DO;
00040    %endTestcall;
00041    %endTestcase;
00042 %END;
00043 %IF &g_inTestcase EQ 2 %THEN %DO;
00044    %endTestcase;
00045 %END;
00046 %LET g_inTestcase=1;
00047 
00048 /* handle absolute and relative paths for programs */
00049 %LOCAL l_pgm l_auton;
00050 %IF %index(%sysfunc(translate(&i_object,/,\)),/) %THEN %DO;
00051    %LET l_pgm = %_sasunit_stdPath(&g_root,&i_object);
00052    %LET l_auton=.;
00053 %END;
00054 %ELSE %DO;
00055    %LET l_pgm = &i_object;
00056    %LET l_auton = %_sasunit_getAutocallNumber(&i_object);
00057 %END;
00058 
00059 /* determine next test case id */
00060 %LOCAL l_casid;%LET l_casid=0;
00061 PROC SQL NOPRINT;
00062    SELECT max(cas_id) INTO :l_casid FROM target.cas
00063    WHERE cas_scnid = &g_scnid;
00064 %IF &l_casid=. %THEN %LET l_casid=1;
00065 %ELSE                %LET l_casid=%eval(&l_casid+1);
00066 /* save metadata for this test case  */
00067    INSERT INTO target.cas VALUES (
00068        &g_scnid
00069       ,&l_casid
00070       ,&l_auton
00071       ,"&l_pgm"
00072       ,"&i_desc"
00073       ,"%_sasunit_abspath(&g_doc,&i_specdoc)"
00074       ,%sysfunc(datetime())
00075       ,.
00076       ,.
00077    );
00078 QUIT;
00079 
00080 %PUT ========================== test case &l_casid ======================================================;
00081 
00082 /* reroute SASLOG and SASLIST */
00083 PROC PRINTTO 
00084    NEW 
00085    LOG="&g_log/%sysfunc(putn(&g_scnid,z3.))_%sysfunc(putn(&l_casid,z3.)).log"
00086    PRINT="&g_testout/%sysfunc(putn(&g_scnid,z3.))_%sysfunc(putn(&l_casid,z3.)).lst"
00087 ;
00088 RUN;
00089 
00090 %MEND initTestcase;

Generated on Sun Oct 10 14:10:15 2010 for SASUnit Examples by  doxygen 1.5.3