Skip to content
Snippets Groups Projects
Commit dd2c64f4 authored by Vakhtang Tsulaia's avatar Vakhtang Tsulaia
Browse files

Merge branch 'ManualSweep21768_master' into 'master'

Manual sweep of !21768 from '21.0' to 'master: Protection for empty GenEvents in BeamEffectsAlg::patchSignalProcessVertex(...)

See merge request atlas/athena!22015
parents 92a7f3a0 c3f5f191
No related branches found
No related tags found
No related merge requests found
[==========] Running 6 tests from 1 test case. [==========] Running 7 tests from 1 test case.
[----------] Global test environment set-up. [----------] Global test environment set-up.
ApplicationMgr SUCCESS ApplicationMgr SUCCESS
==================================================================================================================================== ====================================================================================================================================
...@@ -11,14 +11,17 @@ EventLoopMgr WARNING No events will be processed from external input. ...@@ -11,14 +11,17 @@ EventLoopMgr WARNING No events will be processed from external input.
HistogramPersis...WARNING Histograms saving not required. HistogramPersis...WARNING Histograms saving not required.
ApplicationMgr INFO Application Manager Initialized successfully ApplicationMgr INFO Application Manager Initialized successfully
ApplicationMgr Ready ApplicationMgr Ready
[----------] 6 tests from BeamEffectsAlg_test [----------] 7 tests from BeamEffectsAlg_test
[ RUN ] BeamEffectsAlg_test.empty_alg_execute [ RUN ] BeamEffectsAlg_test.empty_alg_execute
ClassIDSvc INFO getRegistryEntries: read 1507 CLIDRegistry entries for module ALL ClassIDSvc INFO getRegistryEntries: read 1507 CLIDRegistry entries for module ALL
BeamEffectsAlg FATAL No input McEventCollection called GEN_EVENT in StoreGate. BeamEffectsAlg FATAL No input McEventCollection called GEN_EVENT in StoreGate.
[ OK ] BeamEffectsAlg_test.empty_alg_execute (179 ms) [ OK ] BeamEffectsAlg_test.empty_alg_execute (179 ms)
[ RUN ] BeamEffectsAlg_test.set_properties [ RUN ] BeamEffectsAlg_test.set_properties
ClassIDSvc INFO getRegistryEntries: read 359 CLIDRegistry entries for module ALL ClassIDSvc INFO getRegistryEntries: read 359 CLIDRegistry entries for module ALL
[ OK ] BeamEffectsAlg_test.set_properties (2 ms) [ OK ] BeamEffectsAlg_test.set_properties (1 ms)
[ RUN ] BeamEffectsAlg_test.patchSignalProcessVertex_empty_GenEvent
BeamEffectsAlg WARNING No signal_process_vertex found. Empty GenEvent!
[ OK ] BeamEffectsAlg_test.patchSignalProcessVertex_empty_GenEvent (0 ms)
[ RUN ] BeamEffectsAlg_test.signal_process_vertex_exists [ RUN ] BeamEffectsAlg_test.signal_process_vertex_exists
[ OK ] BeamEffectsAlg_test.signal_process_vertex_exists (1 ms) [ OK ] BeamEffectsAlg_test.signal_process_vertex_exists (1 ms)
[ RUN ] BeamEffectsAlg_test.add_signal_process_vertex_atlasG4 [ RUN ] BeamEffectsAlg_test.add_signal_process_vertex_atlasG4
...@@ -26,9 +29,9 @@ ClassIDSvc INFO getRegistryEntries: read 359 CLIDRegistry entries for ...@@ -26,9 +29,9 @@ ClassIDSvc INFO getRegistryEntries: read 359 CLIDRegistry entries for
[ RUN ] BeamEffectsAlg_test.add_signal_process_vertex_isfG4 [ RUN ] BeamEffectsAlg_test.add_signal_process_vertex_isfG4
[ OK ] BeamEffectsAlg_test.add_signal_process_vertex_isfG4 (0 ms) [ OK ] BeamEffectsAlg_test.add_signal_process_vertex_isfG4 (0 ms)
[ RUN ] BeamEffectsAlg_test.execute_pass_through [ RUN ] BeamEffectsAlg_test.execute_pass_through
[ OK ] BeamEffectsAlg_test.execute_pass_through (1 ms) [ OK ] BeamEffectsAlg_test.execute_pass_through (0 ms)
[----------] 6 tests from BeamEffectsAlg_test (183 ms total) [----------] 7 tests from BeamEffectsAlg_test (19 ms total)
[----------] Global test environment tear-down [----------] Global test environment tear-down
[==========] 6 tests from 1 test case ran. (572 ms total) [==========] 7 tests from 1 test case ran. (75 ms total)
[ PASSED ] 6 tests. [ PASSED ] 7 tests.
...@@ -101,13 +101,18 @@ namespace Simulation ...@@ -101,13 +101,18 @@ namespace Simulation
ge.set_signal_process_vertex( signalVertex ); ge.set_signal_process_vertex( signalVertex );
} }
else { else {
ATH_MSG_DEBUG("No signal_process_vertex found - using the first GenVertex in the event."); if (!ge.vertices_empty()) {
HepMC::GenVertex *signalVertex = *(ge.vertices_begin()); ATH_MSG_DEBUG("No signal_process_vertex found - using the first GenVertex in the event.");
ge.set_signal_process_vertex( signalVertex ); HepMC::GenVertex *signalVertex = *(ge.vertices_begin());
ge.set_signal_process_vertex( signalVertex );
}
} }
if( !ge.signal_process_vertex() ) { // Insanity check if( !ge.signal_process_vertex() ) { // Insanity check
ATH_MSG_ERROR("Failed to set signal_process_vertex for GenEvent!!"); if (!ge.vertices_empty()) {
return StatusCode::FAILURE; ATH_MSG_ERROR("Failed to set signal_process_vertex for GenEvent!!");
return StatusCode::FAILURE;
}
ATH_MSG_WARNING("No signal_process_vertex found. Empty GenEvent!");
} }
} }
else { else {
......
...@@ -99,6 +99,12 @@ namespace SimTesting { ...@@ -99,6 +99,12 @@ namespace SimTesting {
ASSERT_TRUE( m_alg->setProperty( "ISFRun", true).isSuccess() ); ASSERT_TRUE( m_alg->setProperty( "ISFRun", true).isSuccess() );
} }
TEST_F(BeamEffectsAlg_test, patchSignalProcessVertex_empty_GenEvent) {
HepMC::GenEvent ge;
ASSERT_TRUE( patchSignalProcessVertex(ge).isSuccess() );
ASSERT_TRUE( ge.signal_process_vertex()==nullptr );
}
TEST_F(BeamEffectsAlg_test, signal_process_vertex_exists) { TEST_F(BeamEffectsAlg_test, signal_process_vertex_exists) {
HepMC::GenEvent ge; HepMC::GenEvent ge;
CLHEP::HepLorentzVector myPos( 1.0, 1.0, 1.0, 1.0); CLHEP::HepLorentzVector myPos( 1.0, 1.0, 1.0, 1.0);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment