ATLAS Offline Software
Loading...
Searching...
No Matches
EventSelectionConfigMerger_unitTest.py
Go to the documentation of this file.
1#!/usr/bin/env python
2# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3"""Unit tests for EventSelectionMergerConfig: the OR-merge across regions.
4
5run_merger builds real regions (RUN_NUMBER + SAVE) named SR, CR and SUB_hidden,
6then appends the merger. Each region's SAVE also emits a CP::SaveFilterAlg, so
7the merger's own filter is identified by its 'EventSelectionMerger' name prefix.
8"""
9
10import unittest
11from EventSelectionAlgorithms.EventSelectionConfigTestSupport import run_merger, named, prop
12
13
14class TestMerger(unittest.TestCase):
16 algs = run_merger(["SR", "CR", "SUB_hidden"])
17 merger = named(algs, "EventSelectionMerger")
18 self.assertEqual(len(merger), 1)
19 self.assertEqual(merger[0].getType(), "CP::SaveFilterAlg")
20 sel = prop(merger[0], "selection")
21 self.assertIn("pass_SR_%SYS%", sel)
22 self.assertIn("pass_CR_%SYS%", sel)
23 self.assertNotIn("pass_SUB_hidden", sel) # SUB-regions are excluded
24 self.assertIn("||", sel) # regions are OR'd
25 self.assertEqual(prop(merger[0], "selectionName"), "pass_anySelection_%SYS%")
26
27
28if __name__ == "__main__":
29 unittest.main()