Skip to content

Commit 94a8190

Browse files
committed
add unit test for L1TZDCEtSumsProducer
1 parent 7d16b36 commit 94a8190

File tree

3 files changed

+203
-0
lines changed

3 files changed

+203
-0
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<!-- test the L1TZDCEtSumsProducer plugin -->
2+
<test name="testL1TZDCEtSumsProducer" command="testL1TZDCEtSumsProducer.sh"/>
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
#!/bin/bash
2+
3+
# Pass in name and status
4+
function die {
5+
echo $1: status $2
6+
exit $2
7+
}
8+
9+
# run test job
10+
TESTDIR="${SCRAM_TEST_PATH}"
11+
12+
set -o pipefail
13+
14+
cmsRun "${TESTDIR}"/testL1TZDCEtSumsProducer_cfg.py -n 10 2>&1 | tee log_testL1TZDCEtSumsProducer \
15+
|| die "Failure running testL1TZDCEtSumsProducer_cfg.py" $?
16+
17+
set +o pipefail
18+
19+
grep l1tZDCEtSumsPrinter2 log_testL1TZDCEtSumsProducer > log_testL1TZDCEtSumsProducer_l1tZDCEtSumsPrinter2
20+
21+
# expected PathSummary of test job
22+
cat <<@EOF > log_testL1TZDCEtSumsProducer_l1tZDCEtSumsPrinter2_expected
23+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (27, 2)
24+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (27, 3)
25+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (27, 4)
26+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (27, 6)
27+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 7)
28+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 2)
29+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 12)
30+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 1)
31+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 0)
32+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 1)
33+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 0)
34+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 2)
35+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 0)
36+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 3)
37+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 1023)
38+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 6)
39+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 0)
40+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 5)
41+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 1)
42+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 7)
43+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 3)
44+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 9)
45+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 31)
46+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 12)
47+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 31)
48+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 8)
49+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 31)
50+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 215)
51+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 0)
52+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 6)
53+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 8)
54+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 5)
55+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 14)
56+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 4)
57+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 16)
58+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 2)
59+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 8)
60+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 4)
61+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 5)
62+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 1023)
63+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 6)
64+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 0)
65+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 6)
66+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 6)
67+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 1)
68+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 61)
69+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 36)
70+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 55)
71+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 5)
72+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 30)
73+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 2)
74+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 18)
75+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 0)
76+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 0)
77+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 131)
78+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 121)
79+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 9)
80+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 22)
81+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 27)
82+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 31)
83+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 59)
84+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 47)
85+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 845)
86+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 52)
87+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 1)
88+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 46)
89+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 28)
90+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 35)
91+
[l1tZDCEtSumsPrinter2] etSums[-1][0] (type, hwPt) = (28, 19)
92+
[l1tZDCEtSumsPrinter2] etSums[-1][1] (type, hwPt) = (27, 66)
93+
[l1tZDCEtSumsPrinter2] etSums[0][0] (type, hwPt) = (28, 20)
94+
[l1tZDCEtSumsPrinter2] etSums[0][1] (type, hwPt) = (27, 61)
95+
[l1tZDCEtSumsPrinter2] etSums[1][0] (type, hwPt) = (28, 23)
96+
[l1tZDCEtSumsPrinter2] etSums[1][1] (type, hwPt) = (27, 47)
97+
[l1tZDCEtSumsPrinter2] etSums[2][0] (type, hwPt) = (28, 12)
98+
[l1tZDCEtSumsPrinter2] etSums[2][1] (type, hwPt) = (27, 45)
99+
@EOF
100+
101+
# compare to expected output of test job
102+
diff log_testL1TZDCEtSumsProducer_l1tZDCEtSumsPrinter2_expected \
103+
log_testL1TZDCEtSumsProducer_l1tZDCEtSumsPrinter2 \
104+
|| die "differences in expected log report" $?
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
import argparse
4+
import sys
5+
6+
parser = argparse.ArgumentParser(prog=sys.argv[0],
7+
description='Test of the L1TZDCEtSumsProducer plugin')
8+
9+
parser.add_argument('-f', '--fileNames', dest='fileNames', nargs='+',
10+
default=['/store/hidata/HIRun2024B/HIForward0/RAW/v1/000/388/784/00000/a277c6d8-c445-4d2b-a45c-0e74e4ed8ce8.root'],
11+
help='Input EDM file(s)'
12+
)
13+
14+
parser.add_argument('-l', '--rawDataLabel', dest='rawDataLabel', type=str, default='rawDataRepacker',
15+
help="Label of the FEDRawDataCollection product to be used as input")
16+
17+
parser.add_argument('-g', '--globalTag', dest='globalTag', type=str, default='auto:run3_hlt_relval',
18+
help="Name of the GlobalTag")
19+
20+
parser.add_argument('-n', '--maxEvents', dest='maxEvents', type=int, default=10,
21+
help="Max number of events to be processed")
22+
23+
parser.add_argument('--skipEvents', dest='skipEvents', type=int, default=0,
24+
help="Value of process.source.skipEvents")
25+
26+
parser.add_argument('-t', '--numberOfThreads', dest='numberOfThreads', type=int, default=1,
27+
help="Value of process.options.numberOfThreads")
28+
29+
parser.add_argument('-s', '--numberOfStreams', dest='numberOfStreams', type=int, default=0,
30+
help="Value of process.options.numberOfStreams")
31+
32+
args = parser.parse_args()
33+
34+
process = cms.Process('TEST')
35+
36+
process.maxEvents.input = args.maxEvents
37+
38+
process.options.numberOfThreads = args.numberOfThreads
39+
process.options.numberOfStreams = args.numberOfStreams
40+
process.options.wantSummary = False
41+
42+
# MessageLogger
43+
process.load('FWCore.MessageService.MessageLogger_cfi')
44+
process.MessageLogger.cerr.FwkReport.reportEvery = 1
45+
46+
# Input source
47+
process.source = cms.Source('PoolSource',
48+
fileNames = cms.untracked.vstring(args.fileNames),
49+
skipEvents = cms.untracked.uint32(args.skipEvents)
50+
)
51+
52+
# GlobalTag (ESSource)
53+
from Configuration.AlCa.GlobalTag import GlobalTag
54+
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
55+
process.GlobalTag = GlobalTag(process.GlobalTag, args.globalTag)
56+
57+
# EventSetup modules
58+
process.HcalTopologyIdealEP = cms.ESProducer("HcalTopologyIdealEP",
59+
Exclude = cms.untracked.string( "" ),
60+
MergePosition = cms.untracked.bool( True ),
61+
appendToDataLabel = cms.string( "" )
62+
)
63+
64+
process.hcalDDDRecConstants = cms.ESProducer("HcalDDDRecConstantsESModule",
65+
appendToDataLabel = cms.string( "" )
66+
)
67+
68+
process.hcalDDDSimConstants = cms.ESProducer("HcalDDDSimConstantsESModule",
69+
appendToDataLabel = cms.string( "" )
70+
)
71+
72+
process.zdcTopologyEP = cms.ESProducer("ZdcTopologyEP",
73+
appendToDataLabel = cms.string( "" )
74+
)
75+
76+
# EventData modules
77+
from EventFilter.L1TRawToDigi.gtStage2Digis_cfi import gtStage2Digis as _gtStage2Digis
78+
process.gtStage2Digis = _gtStage2Digis.clone(InputLabel = args.rawDataLabel)
79+
80+
from EventFilter.HcalRawToDigi.HcalRawToDigi_cfi import hcalDigis as _hcalDigis
81+
process.hcalDigis = _hcalDigis.clone(InputLabel = args.rawDataLabel)
82+
83+
from L1Trigger.L1TZDC.l1tZDCEtSums_cfi import l1tZDCEtSums as _l1tZDCEtSums
84+
process.l1tZDCEtSums = _l1tZDCEtSums.clone(hcalTPDigis = 'hcalDigis')
85+
86+
from L1Trigger.L1TCalorimeter.l1tEtSumsPrinter_cfi import l1tEtSumsPrinter as _l1tEtSumsPrinter
87+
process.l1tZDCEtSumsPrinter1 = _l1tEtSumsPrinter.clone(etSumTypes = [27, 28], src = 'gtStage2Digis:EtSumZDC')
88+
process.l1tZDCEtSumsPrinter2 = process.l1tZDCEtSumsPrinter1.clone(src = 'l1tZDCEtSums')
89+
90+
# Path
91+
process.ThePath = cms.Path(
92+
process.gtStage2Digis
93+
+ process.hcalDigis
94+
+ process.l1tZDCEtSums
95+
+ process.l1tZDCEtSumsPrinter1
96+
+ process.l1tZDCEtSumsPrinter2
97+
)

0 commit comments

Comments
 (0)