From 62dd23ae26ae84dab9460f95ff5c82a0235ac13a Mon Sep 17 00:00:00 2001
From: Scott Snyder <scott.snyder@cern.ch>
Date: Mon, 3 Jun 2019 13:19:09 +0000
Subject: [PATCH] AthenaPoolTest: Avoid catalog collision.

Rename output catalog written by DES test to prevent collisions when
running concurrently with existing tests.
---
 .../AthenaPoolTest/CMakeLists.txt             | 28 +++++++++++--------
 .../AthenaPoolTestStep2WriteDoubleSelector.py |  5 ++++
 .../share/DoubleEventSelectorOverlayTest.py   |  5 ++--
 3 files changed, 24 insertions(+), 14 deletions(-)

diff --git a/AtlasTest/DatabaseTest/AthenaPoolTest/CMakeLists.txt b/AtlasTest/DatabaseTest/AthenaPoolTest/CMakeLists.txt
index 094791c29d0..460e237cc1d 100644
--- a/AtlasTest/DatabaseTest/AthenaPoolTest/CMakeLists.txt
+++ b/AtlasTest/DatabaseTest/AthenaPoolTest/CMakeLists.txt
@@ -86,13 +86,6 @@ function (athenapooltest_run_test testName jo pattern)
 endfunction (athenapooltest_run_test)
 
 
-# Write with DoubleEventSelector
-athenapooltest_run_test( AthenaPoolTestWriteDoubleSelector AthenaPoolTestWriteDoubleSelector
-                         "'^..DoubleEvent|^..AthenaPoolTest'" )
-athenapooltest_run_test( AthenaPoolTestReadDoubleSelector AthenaPoolTestReadDoubleSelector
-                         "'^..DoubleEvent|^..AthenaPoolTest'"
-                         DEPENDS AthenaPoolTestWriteDoubleSelector )
-
 # Write/read out some simple objects:
 athenapooltest_run_test( AthenaPoolTestWrite AthenaPoolTestWrite
                          "^..AthenaPoolTestD" )
@@ -100,6 +93,14 @@ athenapooltest_run_test( AthenaPoolTestRead AthenaPoolTestRead
                          "AthenaPoolTestD"
                          DEPENDS AthenaPoolTestWrite )
 
+# Write with DoubleEventSelector
+athenapooltest_run_test( AthenaPoolTestWriteDoubleSelector AthenaPoolTestWriteDoubleSelector
+                         "'^..DoubleEvent|^..AthenaPoolTest'"
+                         DEPENDS AthenaPoolTestRead)
+athenapooltest_run_test( AthenaPoolTestReadDoubleSelector AthenaPoolTestReadDoubleSelector
+                         "'^..DoubleEvent|^..AthenaPoolTest'"
+                         DEPENDS AthenaPoolTestWriteDoubleSelector )
+
 # Add on test of navigation still using simple objects:
 # AthenaPoolTestWrite - Step2 - rewrite part in another file
 # DoubleEventSelector
@@ -109,7 +110,7 @@ athenapooltest_run_test( AthenaPoolTestStep2WriteDoubleSelector AthenaPoolTestSt
 # normal EventSelector
 athenapooltest_run_test( AthenaPoolTestStep2Write AthenaPoolTestStep2Write
                          "^..AthenaPoolTestD"
-                         DEPENDS AthenaPoolTestRead )
+                         DEPENDS AthenaPoolTestStep2WriteDoubleSelector )
 
 # Copy the Step2 file
 #athenapooltest_run_test( AthenaPoolTestCopy AthenaPoolTestCopy
@@ -135,14 +136,16 @@ athenapooltest_run_test( AthenaPoolTestStep2Write AthenaPoolTestStep2Write
 
 # Test write/read of indet rdos:
 athenapooltest_run_test( InDetRawDataWriter InDetRawDataWriter_jobOptions
-                         "InDetRawDataFak" )
+                         "InDetRawDataFak"
+                         DEPENDS AthenaPoolTestStep2Write )
 athenapooltest_run_test( InDetRawDataRead InDetRawDataReader_jobOptions
                          "InDetRawDataFak"
                          DEPENDS InDetRawDataWriter )
 
 # Test write/read of LAr cell
 athenapooltest_run_test( LArCellContWriter LArCellContWriter_jobOptions
-                         "LArCellContFake" )
+                         "LArCellContFake"
+                         DEPENDS InDetRawDataRead )
 athenapooltest_run_test( LArCellContRead LArCellContReader_jobOptions
                          "LArCellContFake"
                          DEPENDS LArCellContWriter )
@@ -157,7 +160,8 @@ athenapooltest_run_test( ReadCombinedRDO ReadCombinedRDO
 
 # Test basic overlay algorithms with DoubleEventSelector
 athenapooltest_run_test( DoubleEventSelectorOverlayTest DoubleEventSelectorOverlayTest
-                         "'^..DoubleEvent|^..AthenaPoolAddr|^..Stream1'" )
+                         "'^..DoubleEvent|^..AthenaPoolAddr|^..Stream1'"
+                         DEPENDS ReadCombinedRDO )
 
 # AthenaMT test for DoubleEventSelector
 atlas_add_test( DoubleEventSelectorOverlayTestMT
@@ -222,7 +226,7 @@ atlas_add_test( DoubleEventSelectorOverlayTestMT
 # Check for adding DetDescr tags to event info object:
 athenapooltest_run_test( EventInfoWrite EventInfoWrite
                          "'^..[TE][av][ge][In][nt][fI][on][Mf][go][rW]'"
-                         DEPENDS LArCellContRead )
+                         DEPENDS DoubleEventSelectorOverlayTest )
 athenapooltest_run_test( EventInfoWriteStep2 EventInfoWriteStep2
                          "'^..[TE][av][ge][In][nt][fI][on][Mf][go][rW]'"
                          DEPENDS EventInfoWrite )
diff --git a/AtlasTest/DatabaseTest/AthenaPoolTest/share/AthenaPoolTestStep2WriteDoubleSelector.py b/AtlasTest/DatabaseTest/AthenaPoolTest/share/AthenaPoolTestStep2WriteDoubleSelector.py
index 5e29ee5fb6b..50cef3f3b79 100644
--- a/AtlasTest/DatabaseTest/AthenaPoolTest/share/AthenaPoolTestStep2WriteDoubleSelector.py
+++ b/AtlasTest/DatabaseTest/AthenaPoolTest/share/AthenaPoolTestStep2WriteDoubleSelector.py
@@ -88,6 +88,11 @@ Stream3.ItemList   += ["AthenaPoolTestMatrix#*"]
 
 print Stream3.ItemList
 
+# Change output file catalog to avoid collisions.
+PoolSvc = Service( 'PoolSvc' )
+PoolSvc.WriteCatalog = 'file:AthenaPoolTestStep2WriteDoubleSelector_catalog.xml'
+
+
 #--------------------------------------------------------------
 # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL )
 #--------------------------------------------------------------
diff --git a/AtlasTest/DatabaseTest/AthenaPoolTest/share/DoubleEventSelectorOverlayTest.py b/AtlasTest/DatabaseTest/AthenaPoolTest/share/DoubleEventSelectorOverlayTest.py
index cd8048ce610..020754c8c61 100644
--- a/AtlasTest/DatabaseTest/AthenaPoolTest/share/DoubleEventSelectorOverlayTest.py
+++ b/AtlasTest/DatabaseTest/AthenaPoolTest/share/DoubleEventSelectorOverlayTest.py
@@ -46,8 +46,9 @@ DetDescrVersion = "ATLAS-R2-2016-01-00-01"
 #--------------------------------------------------------------
 # Input options
 #--------------------------------------------------------------
-svcMgr.DoubleEventSelector.PrimaryInputCollections = [ "/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/OverlayMonitoringRTT/PileupPremixing/22.0/RDO.merged-pileup-MT.unittest.pool.root" ]
-svcMgr.DoubleEventSelector.SecondaryaryInputCollections = [ "/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/OverlayMonitoringRTT/valid1.410000.PowhegPythiaEvtGen_P2012_ttbar_hdamp172p5_nonallhad.simul.HITS.e4993_s3091/HITS.10504490._000765.pool.root.1" ]
+data_dir = os.environ.get ('ATLAS_REFERENCE_DATA', '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art')
+svcMgr.DoubleEventSelector.PrimaryInputCollections = [ data_dir + "/OverlayMonitoringRTT/PileupPremixing/22.0/RDO.merged-pileup-MT.unittest.pool.root" ]
+svcMgr.DoubleEventSelector.SecondaryaryInputCollections = [ data_dir + "/OverlayMonitoringRTT/valid1.410000.PowhegPythiaEvtGen_P2012_ttbar_hdamp172p5_nonallhad.simul.HITS.e4993_s3091/HITS.10504490._000765.pool.root.1" ]
 svcMgr.DoubleEventSelector.OutputLevel = DEBUG
 
 #--------------------------------------------------------------
-- 
GitLab