Commit 5c66a8d2 authored by cvs2svn's avatar cvs2svn
Browse files

This commit was manufactured by cvs2svn to create tag 'COOL_2_6_0'.

git-svn-id: file:///git/lcgcool.svndb/cool/tags/COOL_2_6_0@15055 4525493e-7705-40b1-a816-d608a930855b
parent e2eff62d
#----------------------------------------------------------------------------
# BEGIN - check the input arguments
#----------------------------------------------------------------------------
BEGIN {
###system( "echo DEBUG Enter BEGIN > /dev/stderr" );
if ( infile == 1 ) {
copy=1;
split( tests2, tests2a );
###system( "echo 'DEBUG Processing file #1' > /dev/stderr" );
###system( "echo 'DEBUG Input2=" input2 "' > /dev/stderr" );
###system( "echo 'DEBUG Tests2=" tests2 "' > /dev/stderr" );
###system( "echo 'DEBUG Tests2 as array - START' > /dev/stderr" );
###for ( t in tests2a ) system( "echo '" tests2a[t] "' > /dev/stderr" );
###system( "echo 'DEBUG Tests2 as array - END' > /dev/stderr" );
if ( input2 == "" ) {
system( "echo 'ERROR: wrong or missing input2' > /dev/stderr" );
exit 1;
}
}
else if ( infile == 2 ) {
###system( "echo 'DEBUG Processing file #2' > /dev/stderr" );
###system( "echo 'DEBUG Group=" group "' > /dev/stderr" );
###system( "echo 'DEBUG Tech=" tech "' > /dev/stderr" );
###system( "echo 'DEBUG Test=" test "' > /dev/stderr" );
copy=0;
if ( group == "" ) {
system( "echo 'ERROR: wrong or missing group' > /dev/stderr" );
exit 1;
}
if ( tech == "" ) {
system( "echo 'ERROR: wrong or missing tech' > /dev/stderr" );
exit 1;
}
if ( test == "" ) {
system( "echo 'ERROR: wrong or missing test' > /dev/stderr" );
exit 1;
}
}
else {
system( "echo 'ERROR: wrong or missing infile' > /dev/stderr" );
exit 1;
}
###system( "echo DEBUG Exit BEGIN > /dev/stderr" );
}
#----------------------------------------------------------------------------
# File #1: define the tests to skip
# File #2: define the tests to merge (one at a time)
#----------------------------------------------------------------------------
{
if ( $1 == "<result" ) {
nf = split( $2, array, "\"" );
if ( nf != 3 ) {
system( "echo 'ERROR: wrong #fields (exp 3)' > /dev/stderr" );
exit 1;
}
this = array[2];
nf = split( this, array, "." );
if ( nf == 2 ) {
thisGroup = array[1];
thisTech = "no_db";
thisTest = array[2];
}
else if ( nf == 3 ) {
thisGroup = array[1];
thisTech = array[2];
thisTest = array[3];
}
else {
system( "echo 'ERROR: wrong #fields (exp 2-3)' > /dev/stderr" );
exit 1;
}
###system( "echo DEBUG \"" thisGroup " " thisTech " " thisTest "\" > /dev/stderr" );
# Reinitialise at every new test output (default: copy file 1, skip file 2)
if ( infile == 1 ) copy=1; else copy=0;
# Define the tests to merge (copy file 2, skip file 1)
if ( infile == 1 ) {
###system( "echo DEBUG this=" this " > /dev/stderr" );
mergeThis=0;
for ( t in tests2a ) { if ( this == tests2a[t] ) mergeThis=1; }
if ( mergeThis == 1 ) # DEFAULT
# if ( ( thisTest == "testX" ) && ( thisTech == "techX" ) ) # TEMPLATE
# if ( thisTech == "sqlite" || thisTech == "frontier" ) # EXAMPLE
# if ( thisTech == "sqlite" ) # EXAMPLE
# if ( thisGroup == "coolkernel" ) # EXAMPLE
# if ( thisTest == "evolution_130" ) # EXAMPLE
# if ( this == "relationalcool.sealplugindump" ) # EXAMPLE
{
copy=0;
cmd="awk -f mergeTestOutput.awk -v infile=2 -v group=" thisGroup " -v tech=" thisTech " -v test=" thisTest " " input2;
###system( "echo DEBUG copy=" copy " > /dev/stderr" );
###system( "echo DEBUG " cmd " > /dev/stderr" );
system(cmd);
}
else {
###system( "echo DEBUG copy=" copy " > /dev/stderr" );
}
}
else {
if ( thisGroup == group && thisTech == tech && thisTest == test ) {
###system( "echo DEBUG OK > /dev/stderr" );
copy=1;
}
else {
###system( "echo DEBUG NOT OK > /dev/stderr" );
}
}
}
}
#----------------------------------------------------------------------------
# File #1: do nothing
# File #2: avoid copying the last two lines
#----------------------------------------------------------------------------
{
if ( infile == 2 && $1 == "</results>" ) copy=0;
}
#----------------------------------------------------------------------------
# File #1: copy data
# File #2: copy data
#----------------------------------------------------------------------------
{
if ( copy == 1 ) print $0;
}
#----------------------------------------------------------------------------
# END - noop
#----------------------------------------------------------------------------
END {
###system( "echo DEBUG Enter END > /dev/stderr" );
###system( "echo DEBUG Exit END > /dev/stderr" );
}
#----------------------------------------------------------------------------
#! /bin/tcsh -f
#echo "mergeTestOutput.csh - You must comment out this line!"; exit 1
set thePlatforms="slc4_ia32_gcc34_dbg\
slc4_ia32_gcc34\
slc4_ia32_gcc43_dbg\
slc4_ia32_gcc43\
slc4_amd64_gcc34_dbg\
slc4_amd64_gcc34\
slc4_amd64_gcc43_dbg\
slc4_amd64_gcc43\
osx105_ia32_gcc401_dbg\
osx105_ia32_gcc401\
win32_vc71_dbg\
win32_vc9_dbg"
set theAwkDir=`dirname $0`
set theInDir1=../qmtest
set theInDir2=../qmtest/new
if ( ! -d ${theInDir1} ) then
echo "ERROR! Directory ${theInDir1} not found"
exit 1
endif
if ( ! -d ${theInDir2} ) then
echo "ERROR! Directory ${theInDir2} not found"
exit 1
endif
set theOutDir=../qmtest/new.merged
echo "Merged logfiles will be in ${theOutDir}"
rm -rf ${theOutDir}
mkdir ${theOutDir}
foreach thePlatform ( ${thePlatforms} )
if ( "${thePlatform}" != "" ) then
set theFile=${thePlatform}.xml
echo "******************************************************************"
echo "Process ${theFile}"
set theInput1=${theInDir1}/${theFile}
set theInput2=${theInDir2}/${theFile}
set thePlatformOK=1
if ( ! -f ${theInput1} ) then
echo "ERROR! File ${theInput1} not found"
set thePlatformOK=0
endif
echo "Merge ${theInput2} into ${theInput1}"
if ( ! -f ${theInput2} ) then
echo "WARNING! File ${theInput2} not found"
set theInput2=${theInput2}.CMT
echo "Try ${theInput2}"
endif
if ( ! -f ${theInput2} ) then
echo "ERROR! File ${theInput2} not found"
set thePlatformOK=0
endif
if ( ${thePlatformOK} == 1 ) then
set theOutput=${theOutDir}/${theFile}
setenv AWKPATH ${theAwkDir}
# Rename .CMT logfiles as standard logfiles
###\mv ${theInput2} ${theOutput}
# Merge parts of the new logfiles into the old logfiles
set theTests2=`cat ${theInput2} | grep '<result id=' | awk '{print substr($2,5,length($2)-5)}'`
awk -v infile=1 -v input2=${theInput2} -v tests2="${theTests2}" -f mergeTestOutput.awk ${theInput1} > ${theOutput}
endif
endif
end
--- TEST ENVIRONMENT ---------------------------------------------------------
qmtest.run.uname:
Darwin macphsft06.cern.ch 9.5.0 Darwin Kernel Version 9.5.0: Wed Sep 3 11:29:43 PDT 2008; root:xnu-1228.7.58~1/RELEASE_I386 i386
qmtest.run.username:
avalassi
qmtest.run.command_line:
/afs/cern.ch/sw/lcg/external/QMtest/2.4_python2.5/osx105_ia32_gcc401/bin/qmtest run -o /afs/cern.ch/sw/lcg/app/releases/COOL/COOL_2_6_0/src/logs/qmtest/osx105_ia32_gcc401.qmr cool
qmtest.run.version:
2.4
qmtest.run.start_time:
2008-11-10T11:11:44Z
qmtest.run.end_time:
2008-11-10T13:49:16Z
--- TEST RESULTS -------------------------------------------------------------
coolkernel.folderspec : PASS
coolkernel.record : PASS
coolkernel.recordadapter : PASS
pycool.import_pycool : PASS
pycool.channelselection : PASS
pycool.coralattributelist : PASS
pycool.coralblob : PASS
pycool.import_pycintex : PASS
pycool.import_root : PASS
pycool.mysql.channels : PASS
pycool.mysql.coolfunctionality : PASS
pycool.mysql.idatabase : PASS
pycool.mysql.idatabasesvc : PASS
pycool.mysql.ifolder : PASS
pycool.mysql.ifolderset : PASS
pycool.mysql.iobject : PASS
pycool.mysql.iobjectiterator : PASS
pycool.oracle.channels : PASS
pycool.oracle.coolfunctionality : PASS
pycool.oracle.idatabase : PASS
pycool.oracle.idatabasesvc : PASS
pycool.oracle.ifolder : PASS
pycool.oracle.ifolderset : PASS
pycool.oracle.iobject : PASS
pycool.oracle.iobjectiterator : PASS
pycool.recordspecification : PASS
pycool.sqlite.channels : PASS
pycool.sqlite.coolfunctionality : PASS
pycool.sqlite.idatabase : PASS
pycool.sqlite.idatabasesvc : PASS
pycool.sqlite.ifolder : PASS
pycool.sqlite.ifolderset : PASS
pycool.sqlite.iobject : PASS
pycool.sqlite.iobjectiterator : PASS
pycoolutilities.frontier.regression : PASS
pycoolutilities.frontier.regression_cache : PASS
pycoolutilities.mysql.evolution_130 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:36:45Z
qmtest.start_time:
2008-11-10T11:36:45Z
qmtest.target:
local
pycoolutilities.mysql.evolution_200 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:36:45Z
qmtest.start_time:
2008-11-10T11:36:45Z
qmtest.target:
local
pycoolutilities.mysql.pycoolconsole : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:36:45Z
qmtest.start_time:
2008-11-10T11:36:45Z
qmtest.target:
local
pycoolutilities.mysql.pycoolcopy : PASS
pycoolutilities.mysql.pycoolpayloader : PASS
pycoolutilities.mysql.pycooltool : PASS
pycoolutilities.mysql.regression : PASS
pycoolutilities.mysql.replication : PASS
pycoolutilities.oracle.evolution_130 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:44:55Z
qmtest.start_time:
2008-11-10T11:44:55Z
qmtest.target:
local
pycoolutilities.oracle.evolution_200 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:44:55Z
qmtest.start_time:
2008-11-10T11:44:55Z
qmtest.target:
local
pycoolutilities.oracle.pycoolconsole : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T11:44:55Z
qmtest.start_time:
2008-11-10T11:44:55Z
qmtest.target:
local
pycoolutilities.oracle.pycoolcopy : PASS
pycoolutilities.oracle.pycoolpayloader : PASS
pycoolutilities.oracle.pycooltool : PASS
pycoolutilities.oracle.regression : PASS
pycoolutilities.oracle.replication : PASS
pycoolutilities.sqlite.evolution_130 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T12:34:43Z
qmtest.start_time:
2008-11-10T12:34:43Z
qmtest.target:
local
pycoolutilities.sqlite.evolution_200 : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T12:34:43Z
qmtest.start_time:
2008-11-10T12:34:43Z
qmtest.target:
local
pycoolutilities.sqlite.pycoolconsole : UNTESTED
Platform not supported.
qmtest.end_time:
2008-11-10T12:34:44Z
qmtest.start_time:
2008-11-10T12:34:44Z
qmtest.target:
local
pycoolutilities.sqlite.pycoolcopy : PASS
pycoolutilities.sqlite.pycoolpayloader : PASS
pycoolutilities.sqlite.pycooltool : PASS
pycoolutilities.sqlite.regression : PASS
pycoolutilities.sqlite.replication : PASS
relationalcool.channelselection : PASS
relationalcool.hvspathhandler : PASS
relationalcool.mysql.channels : PASS
relationalcool.mysql.hvstags : PASS
relationalcool.mysql.raldatabase : PASS
relationalcool.mysql.raldatabase_extendedspec : PASS
relationalcool.mysql.raldatabasesvc : PASS
relationalcool.mysql.ralsequence : PASS
relationalcool.mysql.relationalfolder : PASS
relationalcool.mysql.relationalfolderset : PASS
relationalcool.mysql.relationalobjectiterator : PASS
relationalcool.mysql.relationalobjectmgr : PASS
relationalcool.mysql.relationalobjecttable : PASS
relationalcool.objectid : PASS
relationalcool.oracle.channels : PASS
relationalcool.oracle.hvstags : PASS
relationalcool.oracle.raldatabase : PASS
relationalcool.oracle.raldatabase_extendedspec: PASS
relationalcool.oracle.raldatabasesvc : PASS
relationalcool.oracle.ralsequence : PASS
relationalcool.oracle.relationalfolder : PASS
relationalcool.oracle.relationalfolderset : PASS
relationalcool.oracle.relationalobjectiterator: PASS
relationalcool.oracle.relationalobjectmgr : PASS
relationalcool.oracle.relationalobjecttable : PASS
relationalcool.payloadspecification : PASS
relationalcool.relationaldatabaseid : PASS
relationalcool.sqlite.channels : PASS
relationalcool.sqlite.hvstags : PASS
relationalcool.sqlite.raldatabase : PASS
relationalcool.sqlite.raldatabase_extendedspec: PASS
relationalcool.sqlite.raldatabasesvc : PASS
relationalcool.sqlite.ralsequence : PASS
relationalcool.sqlite.relationalfolder : PASS
relationalcool.sqlite.relationalfolderset : PASS
relationalcool.sqlite.relationalobjectiterator: PASS
relationalcool.sqlite.relationalobjectmgr : PASS
relationalcool.sqlite.relationalobjecttable : PASS
relationalcool.utility_methods : PASS
relationalcool.versionnumber : PASS
--- TESTS THAT DID NOT PASS --------------------------------------------------
pycoolutilities.mysql.evolution_130 : UNTESTED
Platform not supported.
pycoolutilities.mysql.evolution_200 : UNTESTED
Platform not supported.
pycoolutilities.mysql.pycoolconsole : UNTESTED
Platform not supported.
pycoolutilities.oracle.evolution_130 : UNTESTED
Platform not supported.
pycoolutilities.oracle.evolution_200 : UNTESTED
Platform not supported.
pycoolutilities.oracle.pycoolconsole : UNTESTED
Platform not supported.
pycoolutilities.sqlite.evolution_130 : UNTESTED
Platform not supported.
pycoolutilities.sqlite.evolution_200 : UNTESTED
Platform not supported.
pycoolutilities.sqlite.pycoolconsole : UNTESTED
Platform not supported.
--- STATISTICS ---------------------------------------------------------------
100 tests total
9 ( 9%) tests UNTESTED
91 ( 91%) tests PASS
This diff is collapsed.
--- TEST ENVIRONMENT ---------------------------------------------------------
qmtest.run.uname:
Darwin macphsft06.cern.ch 9.5.0 Darwin Kernel Version 9.5.0: Wed Sep 3 11:29:43 PDT 2008; root:xnu-1228.7.58~1/RELEASE_I386 i386
qmtest.run.username:
avalassi
qmtest.run.command_line:
/afs/cern.ch/sw/lcg/external/QMtest/2.4_python2.5/osx105_ia32_gcc401/bin/qmtest run -o /afs/cern.ch/sw/lcg/app/releases/COOL/COOL_2_6_0/src/logs/qmtest/osx105_ia32_gcc401_dbg.qmr cool
qmtest.run.version:
2.4
qmtest.run.start_time:
2008-11-10T11:11:39Z
qmtest.run.end_time:
2008-11-10T14:03:54Z
--- TEST RESULTS -------------------------------------------------------------
coolkernel.folderspec : PASS
coolkernel.record : PASS
coolkernel.recordadapter : PASS
pycool.import_pycool : PASS
pycool.channelselection : PASS
pycool.coralattributelist : PASS
pycool.coralblob : PASS
pycool.import_pycintex : PASS
pycool.import_root : PASS
pycool.mysql.channels : PASS
pycool.mysql.coolfunctionality : PASS
pycool.mysql.idatabase : PASS
pycool.mysql.idatabasesvc : PASS
pycool.mysql.ifolder : PASS
pycool.mysql.ifolderset : PASS
pycool.mysql.iobject : PASS
pycool.mysql.iobjectiterator : PASS
pycool.oracle.channels : PASS
pycool.oracle.coolfunctionality : PASS
pycool.oracle.idatabase : PASS
pycool.oracle.idatabasesvc : PASS
pycool.oracle.ifolder : PASS
pycool.oracle.ifolderset : PASS
pycool.oracle.iobject : PASS
pycool.oracle.iobjectiterator : PASS
pycool.recordspecification : PASS
pycool.sqlite.channels : PASS
pycool.sqlite.coolfunctionality : PASS
pycool.sqlite.idatabase : PASS
pycool.sqlite.idatabasesvc : PASS
pycool.sqlite.ifolder : PASS
pycool.sqlite.ifolderset : PASS
pycool.sqlite.iobject : PASS
pycool.sqlite.iobjectiterator : PASS