caveat emptor.
"""
-from abc import ABC, abstractmethod
import contextlib
import functools
import inspect
import pickle
import random
import statistics
-import time
import tempfile
-from typing import Any, Callable, Dict, List, Optional
+import time
import unittest
import warnings
+from abc import ABC, abstractmethod
+from typing import Any, Callable, Dict, List, Optional
+
+import sqlalchemy as sa
import bootstrap
import config
import function_utils
import scott_secrets
-import sqlalchemy as sa
-
-
logger = logging.getLogger(__name__)
-cfg = config.add_commandline_args(
- f'Logging ({__file__})', 'Args related to function decorators'
-)
+cfg = config.add_commandline_args(f'Logging ({__file__})', 'Args related to function decorators')
cfg.add_argument(
'--unittests_ignore_perf',
action='store_true',
def load_performance_data(self, method_id: str) -> Dict[str, List[float]]:
results = self.conn.execute(
- sa.text(
- f'SELECT * FROM runtimes_by_function WHERE function = "{method_id}";'
- )
+ sa.text(f'SELECT * FROM runtimes_by_function WHERE function = "{method_id}";')
)
ret: Dict[str, List[float]] = {method_id: []}
for result in results.all():
helper = FileBasedPerfRegressionDataPersister(filename)
elif config.config['unittests_persistance_strategy'] == 'DATABASE':
dbspec = config.config['unittests_perfdb_spec']
- dbspec = dbspec.replace(
- '<PASSWORD>', scott_secrets.MARIADB_UNITTEST_PERF_PASSWORD
- )
+ dbspec = dbspec.replace('<PASSWORD>', scott_secrets.MARIADB_UNITTEST_PERF_PASSWORD)
helper = DatabasePerfRegressionDataPersister(dbspec)
else:
raise Exception('Unknown/unexpected --unittests_persistance_strategy value')
def __enter__(self) -> Callable[[], tempfile.SpooledTemporaryFile]:
self.recorder = contextlib.redirect_stdout(self.destination)
- assert self.recorder
+ assert self.recorder is not None
self.recorder.__enter__()
return lambda: self.destination
def __exit__(self, *args) -> Optional[bool]:
- assert self.recorder
+ assert self.recorder is not None
self.recorder.__exit__(*args)
self.destination.seek(0)
return None
def __enter__(self) -> Callable[[], tempfile.SpooledTemporaryFile]:
self.recorder = contextlib.redirect_stderr(self.destination) # type: ignore
- assert self.recorder
+ assert self.recorder is not None
self.recorder.__enter__()
return lambda: self.destination
def __exit__(self, *args) -> Optional[bool]:
- assert self.recorder
+ assert self.recorder is not None
self.recorder.__exit__(*args)
self.destination.seek(0)
return None