neuer testfall
This commit is contained in:
+1
-1
@@ -8,7 +8,7 @@
|
|||||||
// Serviceprogramm erstellen mit :
|
// Serviceprogramm erstellen mit :
|
||||||
// CRTSRVPGM SRVPGM(GOSCH1/MEDDFNSRV)
|
// CRTSRVPGM SRVPGM(GOSCH1/MEDDFNSRV)
|
||||||
// MODULE(GOSCH1/MEDDFNSRV
|
// MODULE(GOSCH1/MEDDFNSRV
|
||||||
// GOSCH1/MEEDFNPRS
|
// GOSCH1/MEdDFNPRS
|
||||||
// GOSCH1/MEDDFNBLD)
|
// GOSCH1/MEDDFNBLD)
|
||||||
// EXPORT(*SRCFILE)
|
// EXPORT(*SRCFILE)
|
||||||
// SRCFILE(GOSCH1/MEDDFN)
|
// SRCFILE(GOSCH1/MEDDFN)
|
||||||
|
|||||||
@@ -0,0 +1,159 @@
|
|||||||
|
**FREE
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// Project.....: MEDDFN
|
||||||
|
//
|
||||||
|
// Member......: MEDDFNTSTX
|
||||||
|
//
|
||||||
|
// Description.: MEDDFN Parser Error Test Program
|
||||||
|
//
|
||||||
|
// Erstellen mit:
|
||||||
|
//
|
||||||
|
// CRTRPGMOD MODULE(GOSCH1/MEDDFNTSTX)
|
||||||
|
// SRCSTMF('/home/GOSCH/meddfn/meddfntstx.rpgle')
|
||||||
|
// OPTION(*EVENTF)
|
||||||
|
// DBGVIEW(*SOURCE)
|
||||||
|
// TGTRLS(*CURRENT)
|
||||||
|
//
|
||||||
|
// CRTPGM PGM(GOSCH1/MEDDFNTSTX)
|
||||||
|
// MODULE(GOSCH1/MEDDFNTSTX)
|
||||||
|
// MODULE(GOSCH1/MEDDFNPRS)
|
||||||
|
// ACTGRP(*NEW)
|
||||||
|
// TGTRLS(*CURRENT)
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
ctl-opt
|
||||||
|
option(*srcstmt:*nodebugio);
|
||||||
|
|
||||||
|
|
||||||
|
/COPY './meddfn_h.rpgle'
|
||||||
|
/COPY './meddfnap_h.rpgle'
|
||||||
|
|
||||||
|
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// Data
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
dcl-s ReceiverBuffer
|
||||||
|
char(32767);
|
||||||
|
|
||||||
|
dcl-ds MediaDefinition
|
||||||
|
likeds(MD_MediaDefinition_T);
|
||||||
|
|
||||||
|
dcl-ds Error
|
||||||
|
likeds(MD_Error_T);
|
||||||
|
|
||||||
|
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// Prototype
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
dcl-pr MD_ParseRetrieveBuffer;
|
||||||
|
|
||||||
|
ReceiverBuffer
|
||||||
|
char(32767) const
|
||||||
|
options(*varsize);
|
||||||
|
|
||||||
|
MediaDefinition
|
||||||
|
likeds(MD_MediaDefinition_T);
|
||||||
|
|
||||||
|
Error
|
||||||
|
likeds(MD_Error_T);
|
||||||
|
|
||||||
|
end-pr;
|
||||||
|
|
||||||
|
|
||||||
|
dcl-pr TestInvalidHeader;
|
||||||
|
end-pr;
|
||||||
|
|
||||||
|
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// Main
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
TestInvalidHeader();
|
||||||
|
|
||||||
|
|
||||||
|
dsply '----------------------------------------';
|
||||||
|
dsply 'MEDDFN Parser Error Test completed';
|
||||||
|
dsply '----------------------------------------';
|
||||||
|
|
||||||
|
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// TestInvalidHeader
|
||||||
|
//
|
||||||
|
// Verifies that the parser rejects an invalid TAPE0200 header.
|
||||||
|
//
|
||||||
|
// The buffer is cleared, so LengthOfHeader is zero instead of the
|
||||||
|
// expected TAPE0200 header length.
|
||||||
|
//
|
||||||
|
// Expected error: MDF2001
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
dcl-proc TestInvalidHeader;
|
||||||
|
|
||||||
|
clear ReceiverBuffer;
|
||||||
|
clear MediaDefinition;
|
||||||
|
clear Error;
|
||||||
|
|
||||||
|
|
||||||
|
dsply '----------------------------------------';
|
||||||
|
dsply 'Test: Invalid TAPE0200 header';
|
||||||
|
dsply '----------------------------------------';
|
||||||
|
|
||||||
|
|
||||||
|
monitor;
|
||||||
|
|
||||||
|
MD_ParseRetrieveBuffer(
|
||||||
|
ReceiverBuffer :
|
||||||
|
MediaDefinition :
|
||||||
|
Error);
|
||||||
|
|
||||||
|
on-error;
|
||||||
|
|
||||||
|
dsply 'FAIL Unexpected runtime error';
|
||||||
|
return;
|
||||||
|
|
||||||
|
endmon;
|
||||||
|
|
||||||
|
|
||||||
|
if Error.HasError;
|
||||||
|
dsply 'PASS Error.HasError';
|
||||||
|
else;
|
||||||
|
dsply 'FAIL Error.HasError';
|
||||||
|
endif;
|
||||||
|
|
||||||
|
|
||||||
|
if Error.MessageID = 'MDF2001';
|
||||||
|
dsply 'PASS Error.MessageID';
|
||||||
|
else;
|
||||||
|
dsply 'FAIL Error.MessageID';
|
||||||
|
endif;
|
||||||
|
|
||||||
|
|
||||||
|
if %trim(Error.MessageData) = '';
|
||||||
|
dsply 'PASS Error.MessageData';
|
||||||
|
else;
|
||||||
|
dsply 'INFO Error.MessageData contains data';
|
||||||
|
endif;
|
||||||
|
|
||||||
|
end-proc;
|
||||||
|
|
||||||
|
|
||||||
|
//=====================================================================
|
||||||
|
//
|
||||||
|
// End
|
||||||
|
//
|
||||||
|
//=====================================================================
|
||||||
|
|
||||||
|
*inlr = *on;
|
||||||
|
return;
|
||||||
Reference in New Issue
Block a user