List of all members.
Detailed Description
Definition at line 961 of file Config.py.
Member Function Documentation
def Config::TestModuleCommand::setUp |
( |
|
self | ) |
|
Definition at line 962 of file Config.py.
00963 :
00964 """Nothing to do """
None
def Config::TestModuleCommand::testCloneSequence |
( |
|
self | ) |
|
Definition at line 1172 of file Config.py.
01173 :
01174 p = Process("test")
01175 a = EDAnalyzer("MyAnalyzer")
01176 p.a = a
01177 a.setLabel("a")
01178 b = EDAnalyzer("YOurAnalyzer")
01179 p.b = b
01180 b.setLabel("b")
01181 path = Path(a * b)
01182 p.path = Path(p.a*p.b)
01183 lookuptable = {id(a): p.a, id(b): p.b}
01184
01185
01186
01187 self.assertEqual(str(path),str(p.path))
def Config::TestModuleCommand::testExamples |
( |
|
self | ) |
|
Definition at line 1283 of file Config.py.
01284 :
01285 p = Process("Test")
01286 p.source = Source("PoolSource",fileNames = untracked(string("file:reco.root")))
01287 p.foos = EDProducer("FooProducer")
01288 p.bars = EDProducer("BarProducer", foos=InputTag("foos"))
01289 p.out = OutputModule("PoolOutputModule",fileName=untracked(string("file:foos.root")))
01290 p.bars.foos = 'Foosball'
01291 self.assertEqual(p.bars.foos, InputTag('Foosball'))
01292 p.p = Path(p.foos*p.bars)
01293 p.e = EndPath(p.out)
01294 p.add_(Service("MessageLogger"))
def Config::TestModuleCommand::testFreeze |
( |
|
self | ) |
|
Definition at line 1349 of file Config.py.
01350 :
01351 process = Process("Freeze")
01352 m = EDProducer("M", p=PSet(i = int32(1)))
01353 m.p.i = 2
01354 process.m = m
01355
01356
01357
01358
01359
01360
01361 process.m.p.i = 4
01362 self.assertEqual(process.m.p.i.value(), 4)
01363 process.m.p = PSet(j=int32(1))
01364
01365 m2 = m.clone(p = PSet(i = int32(5)), j = int32(8))
01366 m2.p.i = 6
m2.j = 8
def Config::TestModuleCommand::testGlobalReplace |
( |
|
self | ) |
|
Definition at line 1125 of file Config.py.
01126 :
01127 p = Process('test')
01128 p.a = EDAnalyzer("MyAnalyzer")
01129 p.b = EDAnalyzer("YourAnalyzer")
01130 p.c = EDAnalyzer("OurAnalyzer")
01131 p.s = Sequence(p.a*p.b)
01132 p.p = Path(p.c+p.s+p.a)
01133 new = EDAnalyzer("NewAnalyzer")
01134 p.globalReplace("a",new)
def Config::TestModuleCommand::testImplicitSchedule |
( |
|
self | ) |
|
Definition at line 1227 of file Config.py.
01228 :
01229 p = Process("test")
01230 p.a = EDAnalyzer("MyAnalyzer")
01231 p.b = EDAnalyzer("YourAnalyzer")
01232 p.c = EDAnalyzer("OurAnalyzer")
01233 p.path1 = Path(p.a)
01234 p.path2 = Path(p.b)
01235 self.assert_(p.schedule is None)
01236 pths = p.paths
01237 keys = pths.keys()
01238 self.assertEqual(pths[keys[0]],p.path1)
01239 self.assertEqual(pths[keys[1]],p.path2)
01240
01241 p = Process("test")
01242 p.a = EDAnalyzer("MyAnalyzer")
01243 p.b = EDAnalyzer("YourAnalyzer")
01244 p.c = EDAnalyzer("OurAnalyzer")
01245 p.path2 = Path(p.b)
01246 p.path1 = Path(p.a)
01247 self.assert_(p.schedule is None)
01248 pths = p.paths
01249 keys = pths.keys()
01250 self.assertEqual(pths[keys[1]],p.path1)
01251 self.assertEqual(pths[keys[0]],p.path2)
01252
def Config::TestModuleCommand::testOverride |
( |
|
self | ) |
|
Definition at line 1260 of file Config.py.
01261 :
01262 p = Process('test')
01263 a = EDProducer("A", a1=int32(0))
01264 self.assert_(not a.isModified())
01265 a.a1 = 1
01266 self.assert_(a.isModified())
01267 p.a = a
01268 self.assertEqual(p.a.a1.value(), 1)
01269
01270
01271 p.a = EDProducer("A", a1=int32(2))
01272 self.assertEqual(p.a.a1.value(), 2)
01273
01274
01275
01276 b = EDProducer("A", a1=int32(3))
01277 b.a1 = 4
01278
01279 ps1 = PSet(a = int32(1))
01280 ps2 = PSet(a = int32(2))
01281 self.assertRaises(ValueError, EDProducer, 'C', ps1, ps2)
01282 self.assertRaises(ValueError, EDProducer, 'C', ps1, a=int32(3))
def Config::TestModuleCommand::testParameterizable |
( |
|
self | ) |
|
Definition at line 965 of file Config.py.
00966 :
00967 p = _Parameterizable()
00968 self.assertEqual(len(p.parameterNames_()),0)
00969 p.a = int32(1)
00970 self.assert_('a' in p.parameterNames_())
00971 self.assertEqual(p.a.value(), 1)
00972 p.a = 10
00973 self.assertEqual(p.a.value(), 10)
00974 p.a = untracked(int32(1))
00975 self.assertEqual(p.a.value(), 1)
00976 self.failIf(p.a.isTracked())
00977 p.a = untracked.int32(1)
00978 self.assertEqual(p.a.value(), 1)
00979 self.failIf(p.a.isTracked())
00980 p = _Parameterizable(foo=int32(10), bar = untracked(double(1.0)))
00981 self.assertEqual(p.foo.value(), 10)
00982 self.assertEqual(p.bar.value(),1.0)
00983 self.failIf(p.bar.isTracked())
00984 self.assertRaises(TypeError,setattr,(p,'c',1))
00985 p = _Parameterizable(a=PSet(foo=int32(10), bar = untracked(double(1.0))))
00986 self.assertEqual(p.a.foo.value(),10)
00987 self.assertEqual(p.a.bar.value(),1.0)
00988 p.b = untracked(PSet(fii = int32(1)))
00989 self.assertEqual(p.b.fii.value(),1)
00990 self.failIf(p.b.isTracked())
00991
00992 v = int32(10)
00993 p=_Parameterizable(a=v)
00994 v.setValue(11)
00995 self.assertEqual(p.a.value(),11)
00996 p.a = 12
00997 self.assertEqual(p.a.value(),12)
self.assertEqual(v.value(),12)
def Config::TestModuleCommand::testPath |
( |
|
self | ) |
|
Definition at line 1150 of file Config.py.
01151 :
01152 p = Process("test")
01153 p.a = EDAnalyzer("MyAnalyzer")
01154 p.b = EDAnalyzer("YourAnalyzer")
01155 p.c = EDAnalyzer("OurAnalyzer")
01156 path = Path(p.a)
01157 path *= p.b
01158 path += p.c
01159 self.assertEqual(str(path),'a+b+c')
01160 path = Path(p.a*p.b+p.c)
01161 self.assertEqual(str(path),'a+b+c')
01162
01163
01164 path = Path(p.a+ p.b*p.c)
01165 self.assertEqual(str(path),'a+b+c')
01166 path = Path(p.a*(p.b+p.c))
01167 self.assertEqual(str(path),'a+b+c')
01168 path = Path(p.a*(p.b+~p.c))
01169 self.assertEqual(str(path),'a+b+~c')
01170 p.es = ESProducer("AnESProducer")
01171 self.assertRaises(TypeError,Path,p.es)
def Config::TestModuleCommand::testPrefers |
( |
|
self | ) |
|
Definition at line 1295 of file Config.py.
01296 :
01297 p = Process("Test")
01298 p.add_(ESSource("ForceSource"))
01299 p.juicer = ESProducer("JuicerProducer")
01300 p.prefer("ForceSource")
01301 p.prefer("juicer")
01302 self.assertEqual(p.dumpConfig(),
01303 """process Test = {
01304 es_module juicer = JuicerProducer {
01305 }
01306 es_source = ForceSource {
01307 }
01308 es_prefer = ForceSource {
01309 }
01310 es_prefer juicer = JuicerProducer {
01311 }
01312 }
01313 """)
01314 p.prefer("juicer",fooRcd=vstring("Foo"))
01315 self.assertEqual(p.dumpConfig(),
01316 """process Test = {
01317 es_module juicer = JuicerProducer {
01318 }
01319 es_source = ForceSource {
01320 }
01321 es_prefer = ForceSource {
01322 }
01323 es_prefer juicer = JuicerProducer {
01324 vstring fooRcd = {
01325 'Foo'
01326 }
01327
01328 }
01329 }
01330 """)
01331 self.assertEqual(p.dumpPython(),
01332 """import FWCore.ParameterSet.Config as cms
01333
01334 process = cms.Process("Test")
01335
01336 process.juicer = cms.ESProducer("JuicerProducer")
01337
01338
01339 process.ForceSource = cms.ESSource("ForceSource")
01340
01341
01342 process.prefer("ForceSource")
01343
01344 process.prefer("juicer",
01345 fooRcd = cms.vstring('Foo')
01346 )
01347
01348 """)
def Config::TestModuleCommand::testProcessDumpConfig |
( |
|
self | ) |
|
Definition at line 1054 of file Config.py.
01055 :
01056 p = Process("test")
01057 p.a = EDAnalyzer("MyAnalyzer")
01058 p.p = Path(p.a)
01059 p.s = Sequence(p.a)
01060 p.r = Sequence(p.s)
01061 p.p2 = Path(p.s)
01062 p.schedule = Schedule(p.p2,p.p)
01063 d=p.dumpPython()
01064 self.assertEqual(d,
01065 """import FWCore.ParameterSet.Config as cms
01066
01067 process = cms.Process("test")
01068
01069 process.a = cms.EDAnalyzer("MyAnalyzer")
01070
01071
01072 process.s = cms.Sequence(process.a)
01073
01074
01075 process.r = cms.Sequence(process.s)
01076
01077
01078 process.p = cms.Path(process.a)
01079
01080
01081 process.p2 = cms.Path(process.s)
01082
01083
01084 process.schedule = cms.Schedule(process.p2,process.p)
01085 """)
01086
01087 p = Process("test")
01088 p.a = EDAnalyzer("MyAnalyzer")
01089 p.p = Path(p.a)
01090 p.r = Sequence(p.a)
01091 p.s = Sequence(p.r)
01092 p.p2 = Path(p.r)
01093 p.schedule = Schedule(p.p2,p.p)
01094 p.b = EDAnalyzer("YourAnalyzer")
01095 d=p.dumpPython()
01096 self.assertEqual(d,
01097 """import FWCore.ParameterSet.Config as cms
01098
01099 process = cms.Process("test")
01100
01101 process.a = cms.EDAnalyzer("MyAnalyzer")
01102
01103
01104 process.b = cms.EDAnalyzer("YourAnalyzer")
01105
01106
01107 process.r = cms.Sequence(process.a)
01108
01109
01110 process.s = cms.Sequence(process.r)
01111
01112
01113 process.p = cms.Path(process.a)
01114
01115
01116 process.p2 = cms.Path(process.r)
01117
01118
01119 process.schedule = cms.Schedule(process.p2,process.p)
""")
def Config::TestModuleCommand::testProcessExtend |
( |
|
self | ) |
|
Definition at line 1027 of file Config.py.
01028 :
01029 class FromArg(object):
01030 def __init__(self,*arg,**args):
01031 for name in args.iterkeys():
01032 self.__dict__[name]=args[name]
01033
01034 a=EDAnalyzer("MyAnalyzer")
01035 s1 = Sequence(a)
01036 s2 = Sequence(s1)
01037 s3 = Sequence(s2)
01038 d = FromArg(
01039 a=a,
01040 b=Service("Full"),
01041 c=Path(a),
01042 d=s2,
01043 e=s1,
01044 f=s3,
01045 g=Sequence(s1+s2+s3)
01046 )
01047 p = Process("Test")
01048 p.extend(d)
01049 self.assertEqual(p.a.type_(),"MyAnalyzer")
01050 self.assertRaises(AttributeError,getattr,p,'b')
01051 self.assertEqual(p.Full.type_(),"Full")
01052 self.assertEqual(str(p.c),'a')
01053 self.assertEqual(str(p.d),'a')
def Config::TestModuleCommand::testProcessInsertion |
( |
|
self | ) |
|
Definition at line 1005 of file Config.py.
01006 :
01007 p = Process("test")
01008 p.a = EDAnalyzer("MyAnalyzer")
01009 self.assert_( 'a' in p.analyzers_() )
01010 self.assert_( 'a' in p.analyzers)
01011 p.add_(Service("MessageLogger"))
01012 self.assert_('MessageLogger' in p.services_())
01013 self.assertEqual(p.MessageLogger.type_(), "MessageLogger")
01014 p.Tracer = Service("Tracer")
01015 self.assert_('Tracer' in p.services_())
01016 self.assertRaises(TypeError, setattr, *(p,'b',"this should fail"))
01017 self.assertRaises(TypeError, setattr, *(p,'bad',Service("MessageLogger")))
01018 self.assertRaises(ValueError, setattr, *(p,'bad',Source("PoolSource")))
01019 p.out = OutputModule("Outer")
01020 self.assertEqual(p.out.type_(), 'Outer')
01021 self.assert_( 'out' in p.outputModules_() )
01022
01023 p.geom = ESSource("GeomProd")
01024 self.assert_('geom' in p.es_sources_())
01025 p.add_(ESSource("ConfigDB"))
01026 self.assert_('ConfigDB' in p.es_sources_())
def Config::TestModuleCommand::testSchedule |
( |
|
self | ) |
|
Definition at line 1188 of file Config.py.
01189 :
01190 p = Process("test")
01191 p.a = EDAnalyzer("MyAnalyzer")
01192 p.b = EDAnalyzer("YourAnalyzer")
01193 p.c = EDAnalyzer("OurAnalyzer")
01194 p.path1 = Path(p.a)
01195 p.path2 = Path(p.b)
01196
01197 s = Schedule(p.path1,p.path2)
01198 self.assertEqual(s[0],p.path1)
01199 self.assertEqual(s[1],p.path2)
01200 p.schedule = s
01201 self.assert_('b' in p.schedule.moduleNames())
01202 self.assert_(hasattr(p, 'b'))
01203 self.assert_(hasattr(p, 'c'))
01204 p.prune()
01205 self.assert_('b' in p.schedule.moduleNames())
01206 self.assert_(hasattr(p, 'b'))
01207 self.assert_(not hasattr(p, 'c'))
01208
01209
01210 p = Process("test")
01211 p.a = EDAnalyzer("MyAnalyzer")
01212 path1 = Path(p.a)
01213 s = Schedule(path1)
01214 self.assertRaises(RuntimeError, lambda : p.setSchedule_(s) )
01215
01216
01217 p = Process("test")
01218 p.a = EDAnalyzer("MyAnalyzer")
01219 p.b = EDAnalyzer("MyOtherAnalyzer")
01220 p.c = EDProducer("MyProd")
01221 path1 = Path(p.c*Sequence(p.a+p.b))
01222 s = Schedule(path1)
01223 self.assert_('a' in s.moduleNames())
01224 self.assert_('b' in s.moduleNames())
01225 self.assert_('c' in s.moduleNames())
01226
def Config::TestModuleCommand::testSecSource |
( |
|
self | ) |
|
Definition at line 1120 of file Config.py.
01121 :
01122 p = Process('test')
01123 p.a = SecSource("MySecSource")
01124 self.assertEqual(p.dumpPython().replace('\n',''),'import FWCore.ParameterSet.Config as cmsprocess = cms.Process("test")process.a = cms.SecSource("MySecSource")')
def Config::TestModuleCommand::testSequence |
( |
|
self | ) |
|
Definition at line 1135 of file Config.py.
01136 :
01137 p = Process('test')
01138 p.a = EDAnalyzer("MyAnalyzer")
01139 p.b = EDAnalyzer("YourAnalyzer")
01140 p.c = EDAnalyzer("OurAnalyzer")
01141 p.s = Sequence(p.a*p.b)
01142 self.assertEqual(str(p.s),'a+b')
01143 self.assertEqual(p.s.label_(),'s')
01144 path = Path(p.c+p.s)
01145 self.assertEqual(str(path),'c+a+b')
01146 p._validateSequence(path, 'p1')
01147 notInProcess = EDAnalyzer('NotInProcess')
01148 p2 = Path(p.c+p.s*notInProcess)
01149 self.assertRaises(RuntimeError, p._validateSequence, p2, 'p2')
def Config::TestModuleCommand::testSubProcess |
( |
|
self | ) |
|
Definition at line 1367 of file Config.py.
01368 :
01369 process = Process("Parent")
01370 subProcess = Process("Child")
01371 subProcess.a = EDProducer("A")
01372 subProcess.p = Path(subProcess.a)
01373 subProcess.add_(Service("Foo"))
01374 process.add_( SubProcess(subProcess) )
01375 d = process.dumpPython()
01376 equalD ="""import FWCore.ParameterSet.Config as cms
01377
01378 process = cms.Process("Parent")
01379
01380 parentProcess = process
01381 import FWCore.ParameterSet.Config as cms
01382
01383 process = cms.Process("Child")
01384
01385 process.a = cms.EDProducer("A")
01386
01387
01388 process.p = cms.Path(process.a)
01389
01390
01391 process.Foo = cms.Service("Foo")
01392
01393
01394 childProcess = process
01395 process = parentProcess
01396 process.subProcess = cms.SubProcess( process = childProcess, SelectEvents = cms.untracked.PSet(
01397
01398 ), outputCommands = cms.untracked.vstring())
01399 """
01400 equalD = equalD.replace("parentProcess","parentProcess"+str(hash(process.subProcess)))
01401 self.assertEqual(d,equalD)
01402 p = TestMakePSet()
01403 process.subProcess.insertInto(p,"dummy")
01404 self.assertEqual((True,['a']),p.values["@sub_process"][1].values["process"][1].values['@all_modules'])
01405 self.assertEqual((True,['p']),p.values["@sub_process"][1].values["process"][1].values['@paths'])
01406 self.assertEqual({'@service_type':(True,'Foo')}, p.values["@sub_process"][1].values["process"][1].values["services"][1][0].values)
01407
unittest.main()
def Config::TestModuleCommand::testTypedParameterizable |
( |
|
self | ) |
|
Definition at line 998 of file Config.py.
00999 :
01000 p = _TypedParameterizable("blah", b=int32(1))
01001
01002 other = p.copy()
01003 other.b = 2
01004 self.assertNotEqual(p.b,other.b)
def Config::TestModuleCommand::testUsing |
( |
|
self | ) |
|
Definition at line 1253 of file Config.py.
01254 :
01255 p = Process('test')
01256 p.block = PSet(a = int32(1))
01257 p.modu = EDAnalyzer('Analyzer', p.block, b = int32(2))
01258 self.assertEqual(p.modu.a.value(),1)
01259 self.assertEqual(p.modu.b.value(),2)