* Add Category and svn information

git-svn-id: trunk@19077 -
This commit is contained in:
pierre 2011-09-16 16:07:48 +00:00
parent 44bd4470f9
commit ea6138cffa

View File

@ -51,6 +51,7 @@ Type
FMachine, FMachine,
FComment, FComment,
FCPU, FCPU,
FCategory,
FOS : String; FOS : String;
FViewVCURL : String; FViewVCURL : String;
FDate : TDateTime; FDate : TDateTime;
@ -89,6 +90,7 @@ Type
Function GetOSName(ID : String) : String; Function GetOSName(ID : String) : String;
Function GetCPUName(ID : String) : String; Function GetCPUName(ID : String) : String;
Function GetVersionName(ID : String) : String; Function GetVersionName(ID : String) : String;
Function GetCategoryName(ID : String) : String;
Function GetTestFileName(ID : String) : String; Function GetTestFileName(ID : String) : String;
Function GetFailCount(RunID : longint) : string; Function GetFailCount(RunID : longint) : string;
Function InitCGIVars : Integer; Function InitCGIVars : Integer;
@ -311,6 +313,9 @@ begin
FCPU:=RequestVariables['cpu']; FCPU:=RequestVariables['cpu'];
if Length(FCPU) = 0 then if Length(FCPU) = 0 then
FCPU:=RequestVariables['TESTCPU']; FCPU:=RequestVariables['TESTCPU'];
FCategory:=RequestVariables['category'];
if Length(FCategory) = 0 then
FCategory:=RequestVariables['TESTCATEGORY'];
FCond:=RequestVariables['cond']; FCond:=RequestVariables['cond'];
if Length(FCond) = 0 then if Length(FCond) = 0 then
FCond:=RequestVariables['TESTCOND']; FCond:=RequestVariables['TESTCOND'];
@ -547,6 +552,12 @@ begin
EmitInput('cond',FCond); EmitInput('cond',FCond);
CellEnd; CellEnd;
end; end;
RowNext;
CellStart;
Write('Category');
CellNext;
ComboBoxFromQuery('Category','SELECT TCAT_ID,TCAT_NAME FROM TESTCATEGORY ORDER BY TCAT_NAME',FCategory);
CellEnd;
RowNext; RowNext;
CellStart; CellStart;
Write('Only failed tests'); Write('Only failed tests');
@ -673,6 +684,12 @@ begin
else else
EmitInput('cond',FCond); EmitInput('cond',FCond);
CellEnd; CellEnd;
RowNext;
CellStart;
Write('Category');
CellNext;
ComboBoxFromQuery('Category','SELECT TCAT_ID,TCAT_NAME FROM TESTCATEGORY ORDER BY TCAT_NAME',FCategory);
CellEnd;
RowNext; RowNext;
CellStart; CellStart;
Write('Only failed tests'); Write('Only failed tests');
@ -781,12 +798,13 @@ Const
'(TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Failed,'+ '(TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Failed,'+
'(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN+'+ '(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN+'+
'TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Total,'+ 'TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Total,'+
'TU_SUBMITTER as Submitter, TU_MACHINE as Machine, TU_COMMENT as Comment '+ 'TU_SUBMITTER as Submitter, TU_MACHINE as Machine, TU_COMMENT as Comment %s '+
'FROM TESTRESULTS,TESTRUN,TESTCPU,TESTOS,TESTVERSION '+ 'FROM TESTRESULTS,TESTRUN,TESTCPU,TESTOS,TESTVERSION,TESTCATEGORY '+
'WHERE '+ 'WHERE '+
'(TC_ID=TU_CPU_FK) AND '+ '(TC_ID=TU_CPU_FK) AND '+
'(TO_ID=TU_OS_FK) AND '+ '(TO_ID=TU_OS_FK) AND '+
'(TV_ID=TU_VERSION_FK) AND '+ '(TV_ID=TU_VERSION_FK) AND '+
'(TCAT_ID=TU_CATEGORY_FK) AND '+
'(TR_TESTRUN_FK=TU_ID) '+ '(TR_TESTRUN_FK=TU_ID) '+
'%s '+ '%s '+
'GROUP BY TU_ID '+ 'GROUP BY TU_ID '+
@ -794,13 +812,15 @@ Const
Var Var
S,A,Qry : String; SC,S,A,Qry : String;
Q : TSQLQuery; Q : TSQLQuery;
begin begin
S:=''; S:='';
If (FCPU<>'') and (GetCPUName(FCPU)<>'All') then If (FCPU<>'') and (GetCPUName(FCPU)<>'All') then
S:=S+' AND (TU_CPU_FK='+FCPU+')'; S:=S+' AND (TU_CPU_FK='+FCPU+')';
If (FCategory<>'') and (GetCategoryName(FCategory)<>'All') then
S:=S+' AND (TU_CATEGORY_FK='+FCategory+')';
If (FVersion<>'') and (GetVersionName(FVersion)<>'All') then If (FVersion<>'') and (GetVersionName(FVersion)<>'All') then
S:=S+' AND (TU_VERSION_FK='+FVERSION+')'; S:=S+' AND (TU_VERSION_FK='+FVERSION+')';
if (FOS<>'') and (GetOSName(FOS)<>'All') then if (FOS<>'') and (GetOSName(FOS)<>'All') then
@ -817,12 +837,20 @@ begin
S:=S+' AND ('+FCond+')'; S:=S+' AND ('+FCond+')';
If FOnlyFailed then If FOnlyFailed then
S:=S+' AND (TR_OK="-")'; S:=S+' AND (TR_OK="-")';
If GetCategoryName(FCategory)<>'DB' then
SC:=', CONCAT(TU_SVNCOMPILERREVISION,"/",TU_SVNRTLREVISION,"/", '+
'TU_SVNPACKAGESREVISION,"/",TU_SVNTESTSREVISION) as svnrev'
else
SC:='';
If GetCategoryName(FCategory)='All' then
SC:=SC+', TCAT_NAME as Cat';
A:=SDetailsURL; A:=SDetailsURL;
If FOnlyFailed then If FOnlyFailed then
A:=A+'&failedonly=1'; A:=A+'&failedonly=1';
If FNoSkipped then If FNoSkipped then
A:=A+'&noskipped=1'; A:=A+'&noskipped=1';
Qry:=Format(SOverview,[S,FLimit]); Qry:=Format(SOverview,[SC,S,FLimit]);
If FDebug then If FDebug then
Writeln('Query : '+Qry); Writeln('Query : '+Qry);
Q:=CreateDataset(Qry); Q:=CreateDataset(Qry);
@ -885,17 +913,26 @@ begin
Result:=GetSingleton('SELECT TV_VERSION FROM TESTVERSION WHERE TV_ID='+ID); Result:=GetSingleton('SELECT TV_VERSION FROM TESTVERSION WHERE TV_ID='+ID);
end; end;
Function TTestSuite.GetCategoryName(ID : String) : String;
begin
if (ID<>'') then
Result:=GetSingleton('SELECT TCAT_NAME FROM TESTCATEGORY WHERE TCAT_ID='+ID);
end;
Function TTestSuite.ShowRunData : Boolean; Function TTestSuite.ShowRunData : Boolean;
Const Const
SGetRunData = 'SELECT TU_ID,TU_DATE,TC_NAME,TO_NAME,' + SGetRunData = 'SELECT TU_ID,TU_DATE,TC_NAME,TO_NAME,' +
'TU_SUBMITTER,TU_MACHINE,TU_COMMENT,TV_VERSION,'+ 'TU_SUBMITTER,TU_MACHINE,TU_COMMENT,TV_VERSION,'+
'TU_CATEGORY_FK,TU_SVNCOMPILERREVISION,TU_SVNRTLREVISION,'+
'TU_SVNPACKAGESREVISION,TU_SVNTESTSREVISION,'+
'(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN) AS OK,'+ '(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN) AS OK,'+
'(TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Failed,'+ '(TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Failed,'+
'(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN+'+ '(TU_SUCCESSFULLYFAILED+TU_SUCCESFULLYCOMPILED+TU_SUCCESSFULLYRUN+'+
'TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Total'+ 'TU_FAILEDTOCOMPILE+TU_FAILEDTORUN+TU_FAILEDTOFAIL) as Total'+
' FROM TESTRUN,TESTCPU,TESTOS,TESTVERSION '+ ' %s FROM TESTRUN,TESTCPU,TESTOS,TESTVERSION '+
'WHERE '+ 'WHERE '+
' (TC_ID=TU_CPU_FK) AND '+ ' (TC_ID=TU_CPU_FK) AND '+
' (TO_ID=TU_OS_FK) AND '+ ' (TO_ID=TU_OS_FK) AND '+
@ -906,14 +943,23 @@ Const
Var Var
Q1,Q2 : TSQLQuery; Q1,Q2 : TSQLQuery;
F : TField; F : TField;
SC : string;
Date1, Date2: TDateTime; Date1, Date2: TDateTime;
begin begin
Result:=(FRunID<>''); Result:=(FRunID<>'');
If Result then If Result then
begin begin
Q1:=CreateDataset(Format(SGetRunData,[FRunID])); If GetCategoryName(FCategory)<>'DB' then
SC:=', CONCAT(TU_SVNCOMPILERREVISION,"/",TU_SVNRTLREVISION,"/", '+
'TU_SVNPACKAGESREVISION,"/",TU_SVNTESTSREVISION) as svnrev'
else
SC:='';
If GetCategoryName(FCategory)='All' then
SC:=SC+', TCAT_NAME as Cat';
Q1:=CreateDataset(Format(SGetRunData,[SC,FRunID]));
if Length(FCompareRunID) > 0 then if Length(FCompareRunID) > 0 then
Q2:=CreateDataset(Format(SGetRunData,[FCompareRunID])) Q2:=CreateDataset(Format(SGetRunData,[SC,FCompareRunID]))
else else
Q2:=nil; Q2:=nil;
Try Try
@ -996,7 +1042,31 @@ begin
if Q2 <> nil then if Q2 <> nil then
Write(Q2.FieldByName('TU_MACHINE').AsString); Write(Q2.FieldByName('TU_MACHINE').AsString);
CellEnd; CellEnd;
RowNext; if GetCategoryName(FCategory)<>'All' then
begin
RowNext;
CellStart;
Write('Category:');
CellNext;
Write(GetCategoryName(Q1.FieldByName('TU_CATEGORY_FK').AsString));
CellNext;
if Q2 <> nil then
Write(GetCategoryName(Q2.FieldByName('TU_CATEGORY_FK').AsString));
CellEnd;
end;
If GetCategoryName(FCategory)<>'DB' then
begin
RowNext;
CellStart;
Write('SVN Revisions:');
CellNext;
Write(Q1.FieldByName('svnrev').AsString);
CellNext;
if Q2 <> nil then
Write(Q2.FieldByName('svnrev').AsString);
CellEnd;
end;
RowNext;
CellStart; CellStart;
Write('Submitter:'); Write('Submitter:');
CellNext; CellNext;
@ -1175,7 +1245,7 @@ Var
Q : TSQLQuery; Q : TSQLQuery;
i : longint; i : longint;
FieldName,FieldValue, FieldName,FieldValue,
Log,Source : String; LLog,Source : String;
Res : Boolean; Res : Boolean;
ver : known_versions; ver : known_versions;
begin begin
@ -1328,22 +1398,22 @@ begin
begin begin
Category:=getsingleton('select TU_CATEGORY_FK from TESTRUN where TU_ID='+FRunId); Category:=getsingleton('select TU_CATEGORY_FK from TESTRUN where TU_ID='+FRunId);
FVersionBranch:=GetVersionName(getsingleton('select TU_VERSION_FK from TESTRUN where TU_ID='+fRunId)); FVersionBranch:=GetVersionName(getsingleton('select TU_VERSION_FK from TESTRUN where TU_ID='+fRunId));
log:=''; LLog:='';
Try Try
log:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid LLog:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid
+') and (TR_TESTRUN_FK='+frunid+')'); +') and (TR_TESTRUN_FK='+frunid+')');
if Log<>'' then if LLog<>'' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('Log of '+FRunId+':'); Write('Log of '+FRunId+':');
HeaderEnd(2); HeaderEnd(2);
PreformatStart; PreformatStart;
system.Write(Log); system.Write(LLog);
system.flush(output); system.flush(output);
PreformatEnd; PreformatEnd;
end; end;
Finally Finally
if Log='' then if LLog='' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('No log of '+FRunId+'.'); Write('No log of '+FRunId+'.');
@ -1353,22 +1423,22 @@ begin
end; end;
if FCompareRunId<>'' then if FCompareRunId<>'' then
begin begin
log:=''; LLog:='';
Try Try
log:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid LLog:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid
+') and (TR_TESTRUN_FK='+fcomparerunid+')'); +') and (TR_TESTRUN_FK='+fcomparerunid+')');
if Log<>'' then if LLog<>'' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('Log of '+FCompareRunId+':'); Write('Log of '+FCompareRunId+':');
HeaderEnd(2); HeaderEnd(2);
PreformatStart; PreformatStart;
system.Write(Log); system.Write(LLog);
system.flush(output); system.flush(output);
PreformatEnd; PreformatEnd;
end; end;
Finally Finally
if Log='' then if LLog='' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('No log of '+FCompareRunId+'.'); Write('No log of '+FCompareRunId+'.');
@ -1478,7 +1548,7 @@ Var
cpu_first_date_id, cpu_last_date_id, cpu_first_date_id, cpu_last_date_id,
version_first_date_id, version_last_date_id : PStatusLA; version_first_date_id, version_last_date_id : PStatusLA;
FieldName,FieldValue, FieldName,FieldValue,
Log,Source : String; LLog,Source : String;
Res : Boolean; Res : Boolean;
ver : known_versions; ver : known_versions;
begin begin
@ -2015,22 +2085,22 @@ begin
begin begin
Category:=getsingleton('select TU_CATEGORY_FK from TESTRUN where TU_ID='+FRunId); Category:=getsingleton('select TU_CATEGORY_FK from TESTRUN where TU_ID='+FRunId);
FVersionBranch:=GetVersionName(getsingleton('select TU_VERSION_FK from TESTRUN where TU_ID='+fRunId)); FVersionBranch:=GetVersionName(getsingleton('select TU_VERSION_FK from TESTRUN where TU_ID='+fRunId));
log:=''; LLog:='';
Try Try
log:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid LLog:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid
+') and (TR_TESTRUN_FK='+frunid+')'); +') and (TR_TESTRUN_FK='+frunid+')');
if Log<>'' then if LLog<>'' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('Log of '+FRunId+':'); Write('LLog of '+FRunId+':');
HeaderEnd(2); HeaderEnd(2);
PreformatStart; PreformatStart;
system.Write(Log); system.Write(LLog);
system.flush(output); system.flush(output);
PreformatEnd; PreformatEnd;
end; end;
Finally Finally
if Log='' then if LLog='' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('No log of '+FRunId+'.'); Write('No log of '+FRunId+'.');
@ -2040,22 +2110,22 @@ begin
end; end;
if FCompareRunId<>'' then if FCompareRunId<>'' then
begin begin
log:=''; LLog:='';
Try Try
log:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid LLog:=getsingleton('select TR_LOG from TESTRESULTS where (TR_TEST_FK='+ftestfileid
+') and (TR_TESTRUN_FK='+fcomparerunid+')'); +') and (TR_TESTRUN_FK='+fcomparerunid+')');
if Log<>'' then if LLog<>'' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('Log of '+FCompareRunId+':'); Write('Log of '+FCompareRunId+':');
HeaderEnd(2); HeaderEnd(2);
PreformatStart; PreformatStart;
system.Write(Log); system.Write(LLog);
system.flush(output); system.flush(output);
PreformatEnd; PreformatEnd;
end; end;
Finally Finally
if Log='' then if LLog='' then
begin begin
HeaderStart(2); HeaderStart(2);
Write('No log of '+FCompareRunId+'.'); Write('No log of '+FCompareRunId+'.');
@ -2064,7 +2134,7 @@ begin
end; end;
end; end;
if FDebug then if FDebug then
Write('After Log.'); Write('After log.');
Source:=''; Source:='';
Try Try
Source:=getsingleton('select T_SOURCE from TESTS where T_ID='+ftestfileid); Source:=getsingleton('select T_SOURCE from TESTS where T_ID='+ftestfileid);