From 16212e154b5fdead833334c471a735cefb4b78be Mon Sep 17 00:00:00 2001 From: David Sangrey Date: Sun, 16 Nov 2025 21:46:36 -0500 Subject: [PATCH] [517] Set Logging Handler and Remove Old Tests --- config/__init__.py | 2 +- tests/config/test_config.py | 98 ------------------------------------- 2 files changed, 1 insertion(+), 99 deletions(-) diff --git a/config/__init__.py b/config/__init__.py index cf01e91c..c1a45a5b 100644 --- a/config/__init__.py +++ b/config/__init__.py @@ -537,7 +537,7 @@ def get_config(*args, **kwargs) -> Config: config_logger = logging.getLogger("pre_config") config_logger.setLevel(logging.DEBUG) # Or INFO -ch = logging.StreamHandler() +ch = logging.StreamHandler(sys.stdout) ch.setLevel(logging.DEBUG) formatter = logging.Formatter("%(asctime)s [%(levelname)s] %(message)s") formatter.converter = gmtime # Optional: match your main logger's UTC timestamps diff --git a/tests/config/test_config.py b/tests/config/test_config.py index cf48acad..32c05ca4 100644 --- a/tests/config/test_config.py +++ b/tests/config/test_config.py @@ -7,7 +7,6 @@ key deletions. Said modifications are to keys that are generated internally. Most of these tests are parity tests with the "old" config, and likely one day can be entirely removed. """ -import contextlib import itertools import pathlib import random @@ -23,8 +22,6 @@ from pytest import mark sys.path += [str(pathlib.Path(__file__).parent.parent.resolve()), "."] print(sys.path) -from _old_config import old_config # noqa: E402 - from config import config # noqa: E402 @@ -148,98 +145,3 @@ class TestNewConfig: assert res == '1337' config.delete(name) config.save() - - -class TestOldNewConfig: - """Tests going through the old config and out the new config.""" - - KEY_PREFIX = 'oldnew_' - - def teardown_method(self) -> None: - """ - Teardown for all config tests to save out configs. - - It is expected that tests have cleaned up whatever keys they have aded. - This is here to ensure that a save out happens for configs that need it. - """ - old_config.save() - config.save() - - def cleanup_entry(self, entry: str) -> None: - """Remove the given key, on both sides if on linux.""" - config.delete(entry) - if sys.platform == 'linux': - old_config.delete(entry) - - def __update_linuxconfig(self) -> None: - """On linux config uses ConfigParser, which doesn't update from disk changes. Force the update here.""" - if sys.platform != 'linux': - return - - from config.linux import LinuxConfig # type: ignore - if isinstance(config, LinuxConfig) and config.config is not None: - config.config.read(config.filename) - - @mark.parametrize("i", _build_test_list(int_tests, _get_fuzz(int, 50, (-big_int, big_int)))) - def test_int(self, i: int) -> None: - """Save an int though the old config, recall it using the new config.""" - if sys.platform == 'win32': - i = abs(i) - - name = self.KEY_PREFIX + f'int_{i}' - old_config.set(name, i) - old_config.save() - - self.__update_linuxconfig() - - res = config.get_int(name) - with contextlib.ExitStack() as stack: - stack.callback(self.cleanup_entry, name) - assert res == i - - @mark.parametrize("string", _build_test_list(string_tests, _get_fuzz(str, value_length=(0, 512)))) - def test_string(self, string: str) -> None: - """Save a string though the old config, recall it using the new config.""" - string = string.replace("\r", "") # The old config does _not_ support \r in its entries. We do. - name = self.KEY_PREFIX + f'string_{hash(string)}' - old_config.set(name, string) - old_config.save() - - self.__update_linuxconfig() - - res = config.get_str(name) - with contextlib.ExitStack() as stack: - stack.callback(self.cleanup_entry, name) - assert res == string - - @mark.parametrize("lst", _build_test_list(list_tests, _get_fuzz(list))) - def test_list(self, lst: list[str]) -> None: - """Save a list though the old config, recall it using the new config.""" - lst = [x.replace("\r", "") for x in lst] # OldConfig on linux fails to store these correctly - if sys.platform == 'win32': - # old conf on windows replaces empty entries with spaces as a workaround for a bug. New conf does not - # So insert those spaces here, to ensure that it works otherwise. - lst = [e if len(e) > 0 else ' ' for e in lst] - - name = self.KEY_PREFIX + f'list_test_{hash("".join(lst))}' - old_config.set(name, lst) - old_config.save() - - self.__update_linuxconfig() - - res = config.get_list(name) - with contextlib.ExitStack() as stack: - stack.callback(self.cleanup_entry, name) - assert res == lst - - @mark.skipif(sys.platform == 'win32', reason="Old Windows config does not support bool types") - @mark.parametrize("b", bool_tests) - def test_bool(self, b: bool) -> None: - """Save a bool though the old config, recall it using the new config.""" - name = str(b) - old_config.set(name, b) - old_config.save() - self.__update_linuxconfig() - with contextlib.ExitStack() as stack: - stack.callback(self.cleanup_entry, name) - assert config.get_bool(name) == b