28 %MACRO _asserts (i_type     =       
 
   40    %IF (&r_casid=_NONE_) %THEN %DO;
 
   44    %IF (&r_tstid=_NONE_) %THEN %DO;
 
   49    %IF (&i_result. eq 0) %THEN %DO;
 
   50       %LET l_errMsg =&i_type.: assert passed.;
 
   52    %ELSE %IF (&i_result. eq 1) %THEN %DO;
 
   53       %LET l_errMsg =&i_type.: assert passed, but manual check necessary.;
 
   56       %IF (%nrbquote(&i_errMsg.) eq _NONE_) %THEN %DO;
 
   57          %LET l_errMsg =%bquote(&i_type. failed: expected value equals &i_expected., but actual value equals &i_actual.);
 
   60          %LET l_errMsg =%bquote(&i_type. failed: &i_errMsg.);
 
   64    %IF (&g_verbose.) %THEN %DO;
 
   65       %IF (&i_result. NE 2) %THEN %DO;
 
   66          %PUT &G_NOTE.(SASUNIT): &l_errMsg.;
 
   69          %PUT &G_ERROR.(SASUNIT): &l_errMsg.;
 
   75       SELECT max(cas_id) INTO :&r_casid FROM target.cas WHERE cas_scnid=&g_scnid;
 
   76       %IF &&&r_casid=. %THEN %DO;
 
   77          %PUT &g_error.(SASUNIT): _asserts: Fehler beim Ermitteln der Testfall-Id;
 
   81       SELECT max(tst_id) INTO :&r_tstid 
 
   84          tst_scnid = &g_scnid AND
 
   85          tst_casid = &&&r_casid
 
   87       %IF &&&r_tstid=. %THEN %LET &r_tstid=1;
 
   88       %ELSE                  %LET &r_tstid=%eval(&&&r_tstid+1);
 
   89       INSERT INTO target.tst VALUES (
 
   94          ,%sysfunc(quote(&i_desc%str( )))
 
   95          ,%sysfunc(quote(&i_expected%str( )))
 
   96          ,%sysfunc(quote(&i_actual%str( )))
 
  102    %PUT ========================== Check &&&r_casid...&&&r_tstid (&i_type) =====================================;
 
  104    %LET &r_casid = %sysfunc(putn(&&&r_casid,z3.));
 
  105    %LET &r_tstid = %sysfunc(putn(&&&r_tstid,z3.));