File indexing completed on 2025-08-06 22:16:07
0001 import FWCore.ParameterSet.Config as cms
0002 import argparse
0003
0004 parser = argparse.ArgumentParser(description='Test edmProvDump')
0005 parser.add_argument("--lumi", type=int, default=1, help="LuminosityBlock number (default 1)")
0006 parser.add_argument("--ivalue", type=int, default=11, help="Value for one tracked parameter (default 11)")
0007 parser.add_argument("--output", default="testEdmProvDump.root", help="Output file name")
0008 parser.add_argument("--accelerators", type=str, nargs='+', help="Propagated to process.options.accelerators (default is unset)")
0009 parser.add_argument("--version", type=str, help="CMSSW version to be used in the ProcessHistory (default is unset")
0010 args = parser.parse_args()
0011
0012 class ProcessAcceleratorTest(cms.ProcessAccelerator):
0013 def __init__(self):
0014 super(ProcessAcceleratorTest,self).__init__()
0015 self._labels = ["test-one", "test-two"]
0016 def labels(self):
0017 return self._labels
0018 def enabledLabels(self):
0019 return self._labels
0020
0021 process = cms.Process("PROD1")
0022 if args.version:
0023 process._specialOverrideReleaseVersionOnlyForTesting(args.version)
0024 if args.accelerators:
0025 process.add_(ProcessAcceleratorTest())
0026 process.options.accelerators = args.accelerators
0027
0028 process.source = cms.Source("IntSource",
0029 firstLuminosityBlock = cms.untracked.uint32(args.lumi)
0030 )
0031 process.maxEvents.input = 3
0032
0033 process.out = cms.OutputModule("PoolOutputModule",
0034 fileName = cms.untracked.string(args.output),
0035 outputCommands = cms.untracked.vstring(
0036 'keep *',
0037 'drop *_intProducerA_*_*'
0038 )
0039 )
0040
0041 process.WhatsItESProducer = cms.ESProducer("WhatsItESProducer")
0042 process.DoodadESSource = cms.ESSource("DoodadESSource")
0043
0044 process.topLevelPSet = cms.PSet(
0045 someInformation = cms.string("foobar")
0046 )
0047
0048 process.a1 = cms.EDAnalyzer("TestFindProduct",
0049 inputTags = cms.untracked.VInputTag( cms.InputTag("source") ),
0050 expectedSum = cms.untracked.int32(12),
0051 inputTagsNotFound = cms.untracked.VInputTag(
0052 cms.InputTag("source", processName=cms.InputTag.skipCurrentProcess()),
0053 cms.InputTag("intProducer", processName=cms.InputTag.skipCurrentProcess()),
0054 cms.InputTag("intProducerU", processName=cms.InputTag.skipCurrentProcess())
0055 )
0056 )
0057
0058 process.a2 = cms.EDAnalyzer("TestFindProduct",
0059 inputTags = cms.untracked.VInputTag( cms.InputTag("intProducerA") ),
0060 expectedSum = cms.untracked.int32(300)
0061 )
0062
0063 process.a3 = cms.EDAnalyzer("TestFindProduct",
0064 inputTags = cms.untracked.VInputTag( cms.InputTag("aliasForInt") ),
0065 expectedSum = cms.untracked.int32(300)
0066 )
0067
0068 process.intProducer = cms.EDProducer("IntProducer", ivalue = cms.int32(1))
0069
0070 process.intProducerU = cms.EDProducer("IntProducer", ivalue = cms.int32(10))
0071
0072 process.intProducerA = cms.EDProducer("IntProducer", ivalue = cms.int32(100))
0073
0074 process.aliasForInt = cms.EDAlias(
0075 intProducerA = cms.VPSet(
0076 cms.PSet(type = cms.string('edmtestIntProduct')
0077 )
0078 )
0079 )
0080
0081 process.intVectorProducer = cms.EDProducer("IntVectorProducer",
0082 count = cms.int32(9),
0083 ivalue = cms.int32(args.ivalue)
0084 )
0085
0086 process.t = cms.Task(process.intProducerU, process.intProducerA, process.intVectorProducer)
0087
0088 process.p = cms.Path(process.intProducer * process.a1 * process.a2 * process.a3, process.t)
0089
0090 process.e = cms.EndPath(process.out)