From 0701403c58cbe4389451928bc3ea89d10fb3012f Mon Sep 17 00:00:00 2001
From: Markus Frank <Markus.Frank@cern.ch>
Date: Fri, 18 Nov 2022 14:19:10 +0100
Subject: [PATCH] Fic ctest and python style errors

---
 DDDigi/python/dddigi.py                   | 11 +++--
 DDDigi/src/DigiKernel.cpp                 |  8 ++--
 DDG4/python/DDG4.py                       |  8 ++--
 examples/DDDigi/scripts/DigiTest.py       | 15 +++++--
 examples/DDDigi/scripts/TestAttenuate.py  |  2 +-
 examples/DDDigi/scripts/TestProperties.py |  5 ++-
 examples/DDDigi/scripts/TestSpillover.py  | 55 ++++++++++++++++++-----
 examples/DDG4/scripts/TestUserCommands.py | 20 +++------
 8 files changed, 82 insertions(+), 42 deletions(-)

diff --git a/DDDigi/python/dddigi.py b/DDDigi/python/dddigi.py
index bd2046589..2cc2581ad 100644
--- a/DDDigi/python/dddigi.py
+++ b/DDDigi/python/dddigi.py
@@ -11,9 +11,9 @@
 from __future__ import absolute_import, unicode_literals
 from dd4hep_base import *  # noqa: F401, F403
 
-
 logger = None
 
+
 def loadDDDigi():
   global logger
   import ROOT
@@ -256,7 +256,9 @@ def _get(self, name):
     v = ret.data
     try:
       v = eval(v)
-    except:
+    except TypeError:
+      pass
+    finally:
       pass
     return v
   elif hasattr(a, name):
@@ -273,7 +275,7 @@ def _set(self, name, value):
   import dd4hep as dd4hep
   act = _get_action(self)
   nam = dd4hep.unicode_2_string(name)
-  if isinstance(value,str):
+  if isinstance(value, str):
     val = dd4hep.unicode_2_string(value)
   else:
     val = str(value)
@@ -285,6 +287,7 @@ def _set(self, name, value):
 
 
 def _props(obj, **extensions):
+  from dd4hep_base import debug as dd4hep_debug
   _import_class('digi', obj)
   cls = getattr(current, obj)
   for extension in extensions.items():
@@ -294,7 +297,7 @@ def _props(obj, **extensions):
       # print('Overloading: ' + str(cls) + ' ' + call + ' to __' + call)
       setattr(cls, '__' + call, getattr(cls, call))
     else:
-      debug('FAILED','Overloading: ' + str(cls) + ' ' + call + ' to __' + call + ' ' + str(hasattr(cls, call)))
+      dd4hep_debug('FAILED', 'Overloading: ' + str(cls) + ' ' + call + ' to __' + call + ' ' + str(hasattr(cls, call)))
     setattr(cls, call, extension[1])
   cls.__getattr__ = _get
   cls.__setattr__ = _set
diff --git a/DDDigi/src/DigiKernel.cpp b/DDDigi/src/DigiKernel.cpp
index ff508c2d0..8af666e11 100644
--- a/DDDigi/src/DigiKernel.cpp
+++ b/DDDigi/src/DigiKernel.cpp
@@ -467,10 +467,10 @@ int DigiKernel::run()   {
     }
   std::chrono::duration<double> duration = std::chrono::system_clock::now() - start;
   double sec = std::chrono::duration_cast<std::chrono::seconds>(duration).count();
-  debug("+++ %d Events out of %d processed. "
-	"Total: %7.1f seconds %7.3f seconds/event",
-	internals->numEvents-int(internals->events_todo), internals->numEvents,
-	sec, sec/double(std::max(1,internals->numEvents)));
+  info("+++ %d Events out of %d processed. "
+       "Total: %7.1f seconds %7.3f seconds/event",
+       internals->numEvents-int(internals->events_todo), internals->numEvents,
+       sec, sec/double(std::max(1,internals->numEvents)));
   return 1;
 }
 
diff --git a/DDG4/python/DDG4.py b/DDG4/python/DDG4.py
index bfc40a509..d396a1af5 100644
--- a/DDG4/python/DDG4.py
+++ b/DDG4/python/DDG4.py
@@ -137,9 +137,11 @@ def _evalProperty(data):
     Strings may be emraced by quotes: '<value>'
   """
   try:
-    if isinstance(data,str):
+    if isinstance(data, str):
       return eval(data)
-  except:
+  except TypeError:
+    pass
+  finally:
     pass
   return data
 
@@ -466,7 +468,7 @@ class Geant4:
 
     \author  M.Frank
     """
-    ui_name = getattr(self.master(),'UI')
+    ui_name = getattr(self.master(), 'UI')
     return self.master().globalAction(ui_name)
 
   def addUserInitialization(self, worker, worker_args=None, master=None, master_args=None):
diff --git a/examples/DDDigi/scripts/DigiTest.py b/examples/DDDigi/scripts/DigiTest.py
index d356a212c..6798d8464 100644
--- a/examples/DDDigi/scripts/DigiTest.py
+++ b/examples/DDDigi/scripts/DigiTest.py
@@ -13,7 +13,7 @@ import os
 import dddigi
 import logging
 from dd4hep import units
-from dddigi import DEBUG, INFO, WARNING, ERROR
+from dddigi import DEBUG, INFO, WARNING, ERROR  # noqa: F401
 
 logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.INFO)
 logger = logging.getLogger(__name__)
@@ -42,7 +42,7 @@ class Test(dddigi.Digitize):
     global attenuation
     dddigi.Digitize.__init__(self, dddigi.Kernel())
     dddigi.setPrintFormat(str('%-32s %5s %s'))
-    dddigi.setPrintLevel(dddigi.OutputLevel.INFO)
+    dddigi.setPrintLevel(INFO)
     self.kernel().printProperties()
     self.geometry = geometry
     self.input = None
@@ -137,12 +137,19 @@ def test_setup_1(digi, print_level=WARNING, parallel=True):
   # ========================================================================================================
   digi.info('Created SIGNAL input')
   input = digi.input_action('DigiParallelActionSequence/READER')
-  input.adopt_action('DigiDDG4ROOT/SignalReader', mask=0xCBAA, input=[digi.next_input()], OutputLevel=print_level, keep_raw=False)
+  input.adopt_action('DigiDDG4ROOT/SignalReader', 
+                     mask=0xCBAA,
+                     input=[digi.next_input()],
+                     OutputLevel=print_level, keep_raw=False)
   # ========================================================================================================
   digi.info('Creating collision overlay....')
   # ========================================================================================================
   overlay = input.adopt_action('DigiSequentialActionSequence/Overlay-1')
-  overlay.adopt_action('DigiDDG4ROOT/Read-1', mask=0xCBEE, input=[digi.next_input()], OutputLevel=print_level, keep_raw=False)
+  overlay.adopt_action('DigiDDG4ROOT/Read-1',
+                       mask=0xCBEE,
+                       input=[digi.next_input()],
+                       OutputLevel=print_level,
+                       keep_raw=False)
   digi.info('Created input.overlay-1')
   # ========================================================================================================
   event = digi.event_action('DigiSequentialActionSequence/EventAction')
diff --git a/examples/DDDigi/scripts/TestAttenuate.py b/examples/DDDigi/scripts/TestAttenuate.py
index 5f857e446..a05849947 100644
--- a/examples/DDDigi/scripts/TestAttenuate.py
+++ b/examples/DDDigi/scripts/TestAttenuate.py
@@ -39,7 +39,7 @@ def run():
                                output_mask=0xFEED,
                                output_segment='deposits')
   evtdump = event.adopt_action('DigiStoreDump/StoreDump')
-  digi.check_creation([evtdump])
+  digi.check_creation([evtdump, combine])
   digi.info('Created event.dump')
   # ========================================================================================================
   digi.run_checked(num_events=5, num_threads=5, parallel=3)
diff --git a/examples/DDDigi/scripts/TestProperties.py b/examples/DDDigi/scripts/TestProperties.py
index caf1a67cc..c07b7a5fd 100644
--- a/examples/DDDigi/scripts/TestProperties.py
+++ b/examples/DDDigi/scripts/TestProperties.py
@@ -25,7 +25,7 @@ def run():
   histo = digi.create_action('DigiDepositEnergyMonitor/TestHisto')
   histo.histo1D_deposits = ("Energy", u"Some main deposit Title", 101, -0.5, 100.5)
   num_tests = num_tests + 1
-  histo.histo1D_delta    = ("Delta",  u"Some delta Title", 50, -5, 5)
+  histo.histo1D_delta    = ("Delta", u"Some delta Title", 50, -5, 5)
   num_tests = num_tests + 1
   histo.printProperties()
   info('property: histo1D_deposits =       %s [%s]' %
@@ -107,7 +107,7 @@ def run():
     num_tests = num_tests + 1
 
   input.add_property('property_string', "string_1")
-  info('property: has_property =           %s [%s]' % 
+  info('property: has_property =           %s [%s]' %
        (yes_no(input.hasProperty('property_string')), str(input.property_string.__class__),))
   info('property: property_string =        %s' % (input.property_string,))
   input.property_string = "string_1123456"
@@ -137,5 +137,6 @@ def run():
   if num_tests == 14:
     info('Property test PASSED')
 
+
 if __name__ == '__main__':
   run()
diff --git a/examples/DDDigi/scripts/TestSpillover.py b/examples/DDDigi/scripts/TestSpillover.py
index 4379c5177..f388432ec 100644
--- a/examples/DDDigi/scripts/TestSpillover.py
+++ b/examples/DDDigi/scripts/TestSpillover.py
@@ -25,7 +25,10 @@ def run():
   digi.info('Creating spillover sequence for EARLIER bunch crossings.....')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover-25')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-25ns', mask=0x1, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-25ns',
+                                     mask=0x1,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att-25ns',
                                      t0=-25 * ns,
                                      signal_decay='exponential',
@@ -38,17 +41,29 @@ def run():
   digi.info('Created input.spillover-25')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover-50')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-50ns', mask=0x2, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-50ns',
+                                     mask=0x2,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att-50ns',
-                                     t0=-50 * ns, input_mask=evtreader.mask, containers=attenuation, OutputLevel=rdr_output)
+                                     t0=-50 * ns,
+                                     input_mask=evtreader.mask,
+                                     containers=attenuation,
+                                     OutputLevel=rdr_output)
   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop-50ns', masks=[evtreader.mask])
   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
   digi.info('Created input.spillover-50')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover-75')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-75ns', mask=0x3, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader-75ns',
+                                     mask=0x3,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att-75ns',
-                                     t0=-75 * ns, input_mask=evtreader.mask, containers=attenuation, OutputLevel=rdr_output)
+                                     t0=-75 * ns,
+                                     input_mask=evtreader.mask,
+                                     containers=attenuation,
+                                     OutputLevel=rdr_output)
   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop-75ns', masks=[evtreader.mask])
   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
   digi.info('Created input.spillover-75')
@@ -56,25 +71,43 @@ def run():
   digi.info('Creating spillover sequence for LATER bunch crossings.....')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover+25')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+25ns', mask=0x4, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+25ns',
+                                     mask=0x4,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att+25ns',
-                                     t0=25 * ns, input_mask=evtreader.mask, containers=attenuation, OutputLevel=rdr_output)
+                                     t0=25 * ns,
+                                     input_mask=evtreader.mask,
+                                     containers=attenuation,
+                                     OutputLevel=rdr_output)
   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop+25ns', masks=[evtreader.mask])
   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
   digi.info('Created input.spillover+25')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover+50')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+50ns', mask=0x5, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+50ns',
+                                     mask=0x5,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att+50ns',
-                                     t0=50 * ns, input_mask=evtreader.mask, containers=attenuation, OutputLevel=rdr_output)
+                                     t0=50 * ns,
+                                     input_mask=evtreader.mask,
+                                     containers=attenuation,
+                                     OutputLevel=rdr_output)
   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop_50ns', masks=[evtreader.mask])
   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
   digi.info('Created input.spillover+50')
   # ========================================================================================================
   spillover = input.adopt_action('DigiSequentialActionSequence/Spillover+75')
-  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+75ns', mask=0x6, input=[digi.next_input()], OutputLevel=rdr_output)
+  evtreader = spillover.adopt_action('DigiDDG4ROOT/Reader+75ns',
+                                     mask=0x6,
+                                     input=[digi.next_input()],
+                                     OutputLevel=rdr_output)
   attenuate = spillover.adopt_action('DigiAttenuatorSequence/Att+75ns',
-                                     t0=75 * ns, input_mask=evtreader.mask, containers=attenuation, OutputLevel=rdr_output)
+                                     t0=75 * ns,
+                                     input_mask=evtreader.mask,
+                                     containers=attenuation,
+                                     OutputLevel=rdr_output)
   hist_drop = spillover.adopt_action('DigiHitHistoryDrop/Drop+75ns', masks=[evtreader.mask])
   digi.check_creation([spillover, evtreader, attenuate, hist_drop])
   digi.info('Created input.spillover+75')
diff --git a/examples/DDG4/scripts/TestUserCommands.py b/examples/DDG4/scripts/TestUserCommands.py
index 04a9dafa4..2b25c5331 100644
--- a/examples/DDG4/scripts/TestUserCommands.py
+++ b/examples/DDG4/scripts/TestUserCommands.py
@@ -29,8 +29,6 @@ logger = logging.getLogger(__name__)
 def run():
   import os
   import DDG4
-  from DDG4 import OutputLevel as Output
-  from g4units import keV
 
   args = DDG4.CommandLine()
   if args.help:
@@ -42,9 +40,9 @@ def run():
     """)
     sys.exit(0)
 
-
   kernel = DDG4.Kernel()
-  kernel.loadGeometry(str("file:" + os.environ['DD4hepExamplesINSTALL'] + "/examples/ClientTests/compact/BoxTrafos.xml"))
+  kernel.loadGeometry(str("file:" + os.environ['DD4hepExamplesINSTALL'] +
+                          "/examples/ClientTests/compact/BoxTrafos.xml"))
   geant4 = DDG4.Geant4(kernel)
   # Configure UI
   if args.macro:
@@ -58,20 +56,17 @@ def run():
     '/ddg4/Print/param configure-command-1',
     '/ddg4/Print/print_param',
     '/ddg4/Print/param configure-command-2',
-    '/ddg4/Print/print_param'
-  ]
+    '/ddg4/Print/print_param']
   ui.InitializeCommands = [
     '/ddg4/Print/param initialize-command-1',
     '/ddg4/Print/print_param',
     '/ddg4/Print/param initialize-command-2',
-    '/ddg4/Print/print_param'
-  ]
+    '/ddg4/Print/print_param']
   ui.PreRunCommands = [
     '/ddg4/Print/param pre-run-command-1',
     '/ddg4/Print/print_param',
     '/ddg4/Print/param pre-run-command-2',
-    '/ddg4/Print/print_param'
-  ]
+    '/ddg4/Print/print_param']
   ui.TerminateCommands = [
     '/ddg4/Print/param terminate-command-1',
     '/ddg4/Print/print_param',
@@ -83,8 +78,7 @@ def run():
     '/ddg4/Print/param post-run-command-1',
     '/ddg4/Print/print_param',
     '/ddg4/Print/param post-run-command-2',
-    '/ddg4/Print/print_param'
-  ]
+    '/ddg4/Print/print_param']
 
   prt = DDG4.Action(kernel, 'TestPrintAction/Print')
   prt.enableUI()
@@ -94,7 +88,7 @@ def run():
   ui.applyCommand('/ddg4/Print/print_param')
 
   # Now build the physics list:
-  phys = geant4.setupPhysics('QGSP_BERT')
+  geant4.setupPhysics('QGSP_BERT')
   logger.info('# Execute some G4 action using the UI handle from DDG4....')
   geant4.ui().applyCommand('/ddg4/Print/param interactive-2')
   geant4.ui().applyCommand('/ddg4/Print/print_param')
-- 
GitLab