für ein Vorbedingungs- Nachbedingungs- Zwischenbedingungs Sonstiges
Kontroll-Konstrukt kann man schön methodenlokale Prozeduren/
funktionen nutzen( die nat. ggf andere Methoden aufrufen).
Je nach Lage der methodenlokalen Variablen zur o.a. Prozedur/Fkt
kann man dann auf diese Variablen und die Parameter wie gewünscht zugreifen
oder aber aus dem Zugriff raushalten.
Mal so auf die Schnelle:
Delphi-Quellcode:
type
TMyCheckSituation = (sVB, sSit1, sNB );
procedure TForm3.Mach(aInt: integer);
var
TestMe: integer;
procedure Chk(
const MySituation: TMySituation);
begin
case MySituation
of
sVB:
if (aInt<8)
and ( TestMe<0)
then // Testfehler!:
// irgendwie Fehlerbedingung händeln, z.B: except.
raise Exception.Create('
Loud Cry');
sSit1: ;
// Check für Sit.1
sNB: ;
// Nachbedingungsckeck;
end;
DoMyGeneralTest;
end;
var
DontTestMe: integer;
begin
Chk(sVB);
// Situationstest Vorbedingung
DontTestMe := 1;
MachWas;
TestMe := DontTestMe;
{$REGION 'InnerCheck SaubereMitte'}
Chk(sSit1);
// Situationstest Situation 1
{$ENDREGION}
MachNochWas;
Chk(sNB);
// NachBedingung
end;