Make MuonG4SD tests reproducible (ATLASSIM-4906)

Merged Nicolas Koehler requested to merge nkoehler/athena:MuonG4SD into master


the objective of this MR is to make the MuonG4SD tests reproducible. Until now, they were completely irreproducible meaning the tests where passing numbers to the HitIdHelpers which were out of range and thus the HitIdHelpers returned random numbers. This lead sometimes to failing unit tests in the master nightlies (cf. ATLASSIM-4906).

@jchapman and me fixed the issue, by allowing to pass std::vector<G4String> and std::vector<G4int> instead of G4String and G4int to DerivedG4SensitiveDetectorTestSetting. This way, a whole G4TouchableHistory can be passed to DerivedG4SensitiveDetectorTestSetting and the MuonG4SD tests can actually give reproducible results. For this change, all clients of DerivedG4SensitiveDetectorTestSetting need to be touched (done by @jchapman in the first 2 commits). Then, the later commit fixes the MuonG4SD tests themselves. This closes ATLASSIM-4906.

Best, Nico

Merge request reports