Implement unit testing for RegionSelector to ensure self-contained CA config
ComponentAccumulator configuration should be self-contained. Add unit testing functionality to the RegionSelector package, to ensure each of the regSelTool_<det>_Cfg
functions produces a self-contained CA and produces a working tool configuration that can be executed.
Specific changes:
- Add new testing algorithm
RegSelToolTester
which takes an array of RegionSelector tools, retrieves them ininitialize()
and then inexecute()
calls their look-up methods for three dummy RoIs (full-scan, central, forward). - Add a helper function to configure list of RegionSelector tools from a list of string detector names. This is porting a simplified version of a function that already has two use cases in Trigger (for Partial Event Building and for ROB Prefetching). After this MR, the Trigger code will be adapted to use the new function from RegSelToolConfig.
- Add unit testing configuration in
RegSelToolConfig.py
when executed as a script. It takes a list of detector names as command-line arguments. - Define unit tests in
CMakeLists.txt
for each detector individually, and one for all together. Only ID and Tile configurations are currently self-contained. All others, namely LAr and Muons need to be fixed. The unit tests for the problematic ones are added as disabled. This facilitates easier testing for developers who will work on fixing them (will just need to enable the test). Jira ATLASRECTS-7289 tracks the required fixes. - It's not feasible time-wise to test different geometries as unit tests, so only the current production (i.e. Run-3) geometry is tested. For that, a Run-3 RAW file is added to
AthenaConfiguration.TestDefaults
.
Edited by Rafal Bielski