Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

# This configuration tests the lumisToSkip, firstRun,
# firstLuminosityBlock, and firstEvent parameters of
# the PoolSource.

import FWCore.ParameterSet.Config as cms

process = cms.Process("MERGE")
process.MessageLogger.cerr.FwkReport.reportEvery = 1000
process.MessageLogger.cerr.threshold = 'ERROR'

import FWCore.Framework.test.cmsExceptionsFatalOption_cff
process.options = cms.untracked.PSet(
  fileMode = cms.untracked.string('FULLMERGE'),
  Rethrow = FWCore.Framework.test.cmsExceptionsFatalOption_cff.Rethrow
)

from IOPool.Input.modules import PoolSource
process.source = PoolSource(
    fileNames = [
        'file:testRunMerge1.root', 
        'file:testRunMerge2.root', 
        'file:testRunMerge3.root',
        'file:testRunMerge4.root',
        'file:testRunMerge5.root'
    ]
    , firstRun = 17
    , firstLuminosityBlock = 3
    , firstEvent = 6
    , lumisToSkip = [
        '18:3',
        '19:2',
        '21:4',
        '16:2'
    ]
    , duplicateCheckMode = 'checkEachRealDataFile'
)

from FWCore.Integration.modules import ThingWithMergeProducer
process.thingWithMergeProducer = ThingWithMergeProducer()

from IOPool.Output.modules import PoolOutputModule
process.out = PoolOutputModule(fileName = 'testRunMerge_a.root')

from FWCore.Framework.modules import RunLumiEventAnalyzer
process.test = RunLumiEventAnalyzer(
    verbose = True,
    expectedRunLumiEvents = [
17, 0, 0,
17, 3, 0,
17, 3, 6,
17, 3, 0,
17, 4, 0,
17, 4, 7,
17, 4, 8,
17, 4, 9,
17, 4, 0,
17, 0, 0,
18, 0, 0,
18, 2, 0,
18, 2, 1,
18, 2, 2,
18, 2, 3,
18, 2, 0,
18, 4, 0,
18, 4, 7,
18, 4, 8,
18, 4, 9,
18, 4, 0,
18, 0, 0,
19, 0, 0,
19, 3, 0,
19, 3, 4,
19, 3, 5,
19, 3, 6,
19, 3, 0,
19, 4, 0,
19, 4, 7,
19, 4, 8,
19, 4, 9,
19, 4, 0,
19, 0, 0,
20, 0, 0,
20, 2, 0,
20, 2, 1,
20, 2, 2,
20, 2, 3,
20, 2, 0,
20, 3, 0,
20, 3, 4,
20, 3, 5,
20, 3, 6,
20, 3, 0,
20, 4, 0,
20, 4, 7,
20, 4, 8,
20, 4, 9,
20, 4, 0,
20, 0, 0,
21, 0, 0,
21, 2, 0,
21, 2, 1,
21, 2, 2,
21, 2, 3,
21, 2, 0,
21, 3, 0,
21, 3, 4,
21, 3, 5,
21, 3, 6,
21, 3, 0,
21, 0, 0
]
)

process.path1 = cms.Path(process.thingWithMergeProducer + process.test)
process.e = cms.EndPath(process.out)