Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-01-14 02:38:45

0001 
0002 # This is the same as testRunMergeTEST except the noEventSort
0003 # option is set in the PoolSource, which changes the order
0004 # events are processed.  Within a LuminosityBlock, they are
0005 # in entry order instead of event number order.  The RunLumiEventAnalyzer
0006 # module checks this.
0007 
0008 import FWCore.ParameterSet.Config as cms
0009 
0010 process = cms.Process("TEST")
0011 process.MessageLogger.cerr.FwkReport.reportEvery = 1000
0012 process.MessageLogger.cerr.threshold = 'ERROR'
0013 
0014 import FWCore.Framework.test.cmsExceptionsFatalOption_cff
0015 process.options = cms.untracked.PSet(
0016   fileMode  = cms.untracked.string('FULLMERGE'),
0017   Rethrow = FWCore.Framework.test.cmsExceptionsFatalOption_cff.Rethrow
0018 )
0019 
0020 from IOPool.Input.modules import PoolSource
0021 process.source = PoolSource(
0022     fileNames = [
0023         'file:testRunMerge.root',
0024         'file:testRunMerge.root'
0025     ],
0026     secondaryFileNames = [
0027         'file:testRunMerge1.root', 
0028         'file:testRunMerge2.root', 
0029         'file:testRunMerge3.root',
0030         'file:testRunMerge4.root',
0031         'file:testRunMerge5.root'
0032 
0033     ],
0034     noEventSort = True
0035     , duplicateCheckMode = 'checkEachRealDataFile'
0036 )
0037 
0038 from IOPool.Output.modules import PoolOutputModule
0039 process.out = PoolOutputModule(fileName = 'testRunMergeRecombined1.root')
0040 
0041 from FWCore.Framework.modules import TestMergeResults, RunLumiEventAnalyzer
0042 process.test = TestMergeResults(
0043 
0044     #   Check to see that the value we read matches what we know
0045     #   was written. Expected values listed below come in sets of three
0046     #      value expected in Thing
0047     #      value expected in ThingWithMerge
0048     #      value expected in ThingWithIsEqual
0049     #   Each set of 3 is tested at endRun for the expected
0050     #   run values or at endLuminosityBlock for the expected
0051     #   lumi values. And then the next set of three values
0052     #   is tested at the next endRun or endLuminosityBlock.
0053     #   When the sequence of parameter values is exhausted it stops checking
0054     #   0's are just placeholders, if the value is a "0" the check is not made.
0055 
0056     expectedBeginRunProd = [
0057         10001,   30006,  10003,  # end run 1
0058         10001,   10002,  10003,  # end run 2
0059         10001,   20004,  10003,  # end run 11
0060         10001,   30006,  10003,  # end run 1
0061         10001,   10002,  10003,  # end run 2
0062         10001,   20004,  10003   # end run 11
0063     ],
0064 
0065     expectedEndRunProd = [
0066         100001, 300006, 100003,  # end run 1
0067         100001, 100002, 100003,  # end run 2
0068         100001, 200004, 100003,  # end run 11
0069         100001, 300006, 100003,  # end run 1
0070         100001, 100002, 100003,  # end run 2
0071         100001, 200004, 100003   # end run 11
0072     ],
0073 
0074     expectedBeginLumiProd = [
0075         101,       306,    103,  # end run 1 lumi 1
0076         101,       102,    103,  # end run 2 lumi 1
0077         101,       102,    103,  # end run 11 lumi 1
0078         101,       102,    103,  # end run 11 lumi 2
0079         101,       306,    103,  # end run 1 lumi 1
0080         101,       102,    103,  # end run 2 lumi 1
0081         101,       102,    103,  # end run 11 lumi 1
0082         101,       102,    103   # end run 11 lumi 2
0083     ],
0084 
0085     expectedEndLumiProd = [
0086         1001,     3006,   1003,  # end run 1 lumi 1
0087         1001,     1002,   1003,  # end run 2 lumi 1
0088         1001,     1002,   1003,  # end run 11 lumi 1
0089         1001,     1002,   1003,  # end run 11 lumi 2
0090         1001,     3006,   1003,  # end run 1 lumi 1
0091         1001,     1002,   1003,  # end run 2 lumi 1
0092         1001,     1002,   1003,  # end run 11 lumi 1
0093         1001,     1002,   1003   # end run 11 lumi 2
0094     ],
0095 
0096     expectedBeginRunNew = [
0097         10001,   20004,  10003,  # end run 1
0098         10001,   10002,  10003,  # end run 2
0099         10001,   10002,  10003,  # end run 11
0100         10001,   20004,  10003,  # end run 1
0101         10001,   10002,  10003,  # end run 2
0102         10001,   10002,  10003   # end run 11
0103     ],
0104 
0105     expectedEndRunNew = [
0106         100001, 200004, 100003,  # end run 1
0107         100001, 100002, 100003,  # end run 2
0108         100001, 100002, 100003,  # end run 11
0109         100001, 200004, 100003,  # end run 1
0110         100001, 100002, 100003,  # end run 2
0111         100001, 100002, 100003   # end run 11
0112     ],
0113 
0114     expectedBeginLumiNew = [
0115         101,       204,    103,  # end run 1 lumi 1
0116         101,       102,    103,  # end run 2 lumi 1
0117         101,       102,    103,  # end run 11 lumi 1
0118         101,       102,    103,  # end run 11 lumi 2
0119         101,       204,    103,  # end run 1 lumi 1
0120         101,       102,    103,  # end run 2 lumi 1
0121         101,       102,    103,  # end run 11 lumi 1
0122         101,       102,    103   # end run 11 lumi 2
0123     ],
0124 
0125     expectedEndLumiNew = [
0126         1001,     2004,   1003,  # end run 1 lumi 1
0127         1001,     1002,   1003,  # end run 2 lumi 1
0128         1001,     1002,   1003,  # end run 11 lumi 1
0129         1001,     1002,   1003,  # end run 11 lumi 2
0130         1001,     2004,   1003,  # end run 1 lumi 1
0131         1001,     1002,   1003,  # end run 2 lumi 1
0132         1001,     1002,   1003,  # end run 11 lumi 1
0133         1001,     1002,   1003   # end run 11 lumi 2
0134     ],
0135 
0136     expectedDroppedEvent = [13, 10003, 100003, 103, 1003],
0137     verbose = False,
0138 
0139     expectedParents = [
0140         'm1', 'm1', 'm1', 'm1', 'm1',
0141         'm1', 'm1', 'm1', 'm1', 'm1',
0142         'm2', 'm2', 'm2', 'm2', 'm2',
0143         'm3', 'm3', 'm3', 'm3', 'm3',
0144         'm3', 'm3', 'm3', 'm3', 'm3',
0145         'm2', 'm2', 'm2', 'm2', 'm2',
0146         'm1', 'm1',
0147         'm1', 'm1', 'm1', 'm1', 'm1',
0148         'm1', 'm1', 'm1', 'm1', 'm1',
0149         'm2', 'm2', 'm2', 'm2', 'm2',
0150         'm3', 'm3', 'm3', 'm3', 'm3',
0151         'm3', 'm3', 'm3', 'm3', 'm3',
0152         'm2', 'm2', 'm2', 'm2', 'm2',
0153         'm1', 'm1'
0154    ]
0155 )
0156 
0157 process.test2 = RunLumiEventAnalyzer(
0158     verbose = True,
0159     expectedRunLumiEvents = [
0160 1, 0, 0,
0161 1, 1, 0,
0162 1, 1, 11,
0163 1, 1, 12,
0164 1, 1, 13,
0165 1, 1, 14,
0166 1, 1, 15,
0167 1, 1, 16,
0168 1, 1, 17,
0169 1, 1, 18,
0170 1, 1, 19,
0171 1, 1, 20,
0172 1, 1, 21,
0173 1, 1, 22,
0174 1, 1, 23,
0175 1, 1, 24,
0176 1, 1, 25,
0177 1, 1, 1,
0178 1, 1, 2,
0179 1, 1, 3,
0180 1, 1, 4,
0181 1, 1, 5,
0182 1, 1, 6,
0183 1, 1, 7,
0184 1, 1, 8,
0185 1, 1, 9,
0186 1, 1, 10,
0187 1, 1, 0,
0188 1, 0, 0,
0189 2, 0, 0,
0190 2, 1, 0,
0191 2, 1, 1,
0192 2, 1, 2,
0193 2, 1, 3,
0194 2, 1, 4,
0195 2, 1, 5,
0196 2, 1, 0,
0197 2, 0, 0,
0198 11, 0, 0,
0199 11, 1, 0,
0200 11, 1, 1,
0201 11, 1, 0,
0202 11, 2, 0,
0203 11, 2, 1,
0204 11, 2, 0,
0205 11, 0, 0,
0206 1, 0, 0,
0207 1, 1, 0,
0208 1, 1, 11,
0209 1, 1, 12,
0210 1, 1, 13,
0211 1, 1, 14,
0212 1, 1, 15,
0213 1, 1, 16,
0214 1, 1, 17,
0215 1, 1, 18,
0216 1, 1, 19,
0217 1, 1, 20,
0218 1, 1, 21,
0219 1, 1, 22,
0220 1, 1, 23,
0221 1, 1, 24,
0222 1, 1, 25,
0223 1, 1, 1,
0224 1, 1, 2,
0225 1, 1, 3,
0226 1, 1, 4,
0227 1, 1, 5,
0228 1, 1, 6,
0229 1, 1, 7,
0230 1, 1, 8,
0231 1, 1, 9,
0232 1, 1, 10,
0233 1, 1, 0,
0234 1, 0, 0,
0235 2, 0, 0,
0236 2, 1, 0,
0237 2, 1, 1,
0238 2, 1, 2,
0239 2, 1, 3,
0240 2, 1, 4,
0241 2, 1, 5,
0242 2, 1, 0,
0243 2, 0, 0
0244 ]
0245 )
0246 
0247 process.path1 = cms.Path(process.test + process.test2)
0248 process.endpath1 = cms.EndPath(process.out)