From d7c6fb5ddee033711e3a2cacf1fe3ebd2ffdeafa Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Tue, 6 Feb 2024 17:21:26 -0500 Subject: [PATCH] Rename _current_method to _current_test --- netbox/extras/scripts.py | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/netbox/extras/scripts.py b/netbox/extras/scripts.py index ed6a106bc..b1f9ca719 100644 --- a/netbox/extras/scripts.py +++ b/netbox/extras/scripts.py @@ -277,7 +277,7 @@ class BaseScript: self.tests = {} # Mapping of logs for test methods self.output = '' self.failed = False - self._current_method = '' # Tracks the current test method being run (if any) + self._current_test = None # Tracks the current test method being run (if any) # Initiate the log self.logger = logging.getLogger(f"netbox.scripts.{self.__module__}.{self.__class__.__name__}") @@ -440,10 +440,10 @@ class BaseScript: raise ValueError(f"Invalid logging level: {level}") # A test method is currently active, so log the message using legacy Report logging - if self._current_method: + if self._current_test: # TODO: Use a dataclass for test method logs - self.tests[self._current_method]['log'].append(( + self.tests[self._current_test]['log'].append(( timezone.now().isoformat(), level, str(obj) if obj else None, @@ -452,8 +452,8 @@ class BaseScript: )) # Increment the event counter for this level - if level in self.tests[self._current_method]: - self.tests[self._current_method][level] += 1 + if level in self.tests[self._current_test]: + self.tests[self._current_test][level] += 1 elif message: @@ -525,17 +525,16 @@ class BaseScript: self.logger.info(f"Running report") try: - for method_name in self.tests: - self._current_method = method_name - test_method = getattr(self, method_name) + for test_name in self.tests: + self._current_test = test_name + test_method = getattr(self, test_name) test_method() + self._current_test = None except Exception as e: + self._current_test = None self.post_run() - self._current_method = '' raise e - self._current_method = '' - def pre_run(self): """ Legacy method for operations performed immediately prior to running a Report.