12from AthenaConfiguration
import AllConfigFlags, Enums, TestDefaults, MainServicesConfig
23 """set up an output stream and xAOD::EventInfo"""
24 accumulator = OutputStreamConfig.OutputStreamCfg(flags, streamName=
"AOD")
25 accumulator.merge(SetupMetaDataForStreamCfg(flags, streamName=
"AOD"))
28 if flags.Common.Project == Project.AthAnalysis:
29 originalList = accumulator.getEventAlgo(
'StreamAOD').MetadataItemList
30 modifiedList = [s
for s
in originalList
if s !=
"ByteStreamMetadataContainer#*"]
31 accumulator.getEventAlgo(
'StreamAOD').MetadataItemList = modifiedList
34 xAODEventInfoCnvConfig.EventInfoCnvAlgCfg(
35 flags=flags, inputKey=
"", disableBeamSpot=flags.Common.Project
is not Enums.Project.Athena
53 """Run a job writing a file with FileMetaData"""
54 msg = Logging.logging.getLogger(
"TestFileMetaData")
56 flags = AllConfigFlags.initConfigFlags()
57 flags.Exec.OutputLevel = Constants.DEBUG
58 flags.Input.Files = TestDefaults.defaultTestFiles.AOD_RUN2_DATA
59 flags.Output.AODFileName =
"test.pool.root"
60 flags.Output.doWriteAOD =
True
61 flags.Concurrency.NumThreads = 4
62 flags.Concurrency.NumConcurrentEvents = 4
65 write = MainServicesConfig.MainServicesCfg(flags)
66 write.merge(PoolReadCfg(flags))
72 msg.info(
"File contains xAOD::FileMetaData")
74 msg.error(
"File does not contain xAOD::FileMetaData")
75 except ReferenceError:
76 msg.error(
"Failed to produce output file")
78 msg.error(
"Failed to get metadata item list from file")