Browse Source

+ use -n option
+ use -G- for only graph
+ use -I- for only interactive
+ use -K- for only known bugs.

pierre 23 years ago
parent
commit
4f5c0e07ec
1 changed files with 34 additions and 6 deletions
  1. 34 6
      tests/utils/dotest.pp

+ 34 - 6
tests/utils/dotest.pp

@@ -63,6 +63,7 @@ const
   DoInteractive : boolean = false;
   DoInteractive : boolean = false;
   DoExecute : boolean = false;
   DoExecute : boolean = false;
   DoKnown : boolean = false;
   DoKnown : boolean = false;
+  DoUsual : boolean = true;
 
 
 procedure Verbose(lvl:TVerboseLevel;const s:string);
 procedure Verbose(lvl:TVerboseLevel;const s:string);
 begin
 begin
@@ -454,7 +455,7 @@ var
 begin
 begin
   RunCompiler:=false;
   RunCompiler:=false;
   OutName:=ForceExtension(PPFile,'log');
   OutName:=ForceExtension(PPFile,'log');
-  args:='-Fuunits';
+  args:='-n -Fuunits';
   if Config.NeedOptions<>'' then
   if Config.NeedOptions<>'' then
    args:=args+' '+Config.NeedOptions;
    args:=args+' '+Config.NeedOptions;
   args:=args+' '+ppfile;
   args:=args+' '+ppfile;
@@ -541,7 +542,11 @@ begin
   TestExe:=ForceExtension(PPFile,ExeExt);
   TestExe:=ForceExtension(PPFile,ExeExt);
   OutName:=ForceExtension(PPFile,'elg');
   OutName:=ForceExtension(PPFile,'elg');
   Verbose(V_Debug,'Executing '+TestExe);
   Verbose(V_Debug,'Executing '+TestExe);
-  ExecuteRedir(TestExe,'','',OutName,'');
+  { don't redirect interactive and graph programs .. }
+  if Config.IsInteractive or Config.UsesGraph then
+    ExecuteRedir(TestExe,'','','','')
+  else
+    ExecuteRedir(TestExe,'','',OutName,'');
   Verbose(V_Debug,'Exitcode '+ToStr(ExecuteResult));
   Verbose(V_Debug,'Exitcode '+ToStr(ExecuteResult));
   if ExecuteResult<>Config.ResultCode then
   if ExecuteResult<>Config.ResultCode then
    begin
    begin
@@ -603,10 +608,22 @@ begin
            end;
            end;
          'C' : CompilerBin:=Para;
          'C' : CompilerBin:=Para;
          'E' : DoExecute:=true;
          'E' : DoExecute:=true;
-         'G' : DoGraph:=true;
-         'I' : DoInteractive:=true;
+         'G' : begin
+                 DoGraph:=true;
+                 if para='-' then
+                   DoUsual:=false;
+               end;
+         'I' : begin
+                 DoInteractive:=true;
+                 if para='-' then
+                   DoUsual:=false;
+               end;
          'V' : DoVerbose:=true;
          'V' : DoVerbose:=true;
-         'K' : DoKnown:=true;
+         'K' : begin
+                 DoKnown:=true;
+                 if para='-' then
+                   DoUsual:=false;
+               end;
         end;
         end;
      end
      end
     else
     else
@@ -668,6 +685,11 @@ begin
       end;
       end;
    end;
    end;
 
 
+  if Res and not DoUsual then
+    res:=(Config.IsInteractive and DoInteractive) or
+         (Config.IsKnown and DoKnown) or
+         (Config.UsesGraph and DoGraph);
+
   if Res then
   if Res then
    begin
    begin
      if Config.NeedVersion<>'' then
      if Config.NeedVersion<>'' then
@@ -744,7 +766,13 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.18  2002-11-14 10:36:12  pierre
+  Revision 1.19  2002-11-18 01:31:07  pierre
+   + use -n option
+   + use -G- for only graph
+   + use -I- for only interactive
+   + use -K- for only known bugs.
+
+  Revision 1.18  2002/11/14 10:36:12  pierre
    * add internalerror info to log file
    * add internalerror info to log file
 
 
   Revision 1.17  2002/11/13 15:26:24  pierre
   Revision 1.17  2002/11/13 15:26:24  pierre