diff options
author | Calum Lind <calumlind+deluge@gmail.com> | 2022-03-02 08:51:29 +0000 |
---|---|---|
committer | Calum Lind <calumlind+deluge@gmail.com> | 2023-03-03 15:57:46 +0000 |
commit | e90f6c7eef7bcacf18116988086c8c071d7e40a1 (patch) | |
tree | e9936f4079cd50ccb5b3ab01724cda551f91eb13 | |
parent | 7b1a0ef89cd995a7e6e23c96fde3c617dae30263 (diff) | |
download | deluge-e90f6c7eef7bcacf18116988086c8c071d7e40a1.tar.gz deluge-e90f6c7eef7bcacf18116988086c8c071d7e40a1.tar.bz2 deluge-e90f6c7eef7bcacf18116988086c8c071d7e40a1.zip |
[Tests] Use tmp_path for test logfile
Daemon logfile were being stored in dir where tests were started from
which cluttered up local dev env.
Entry point logfiles are stored in config dir since getting tmp_path in
set_up was a bit too tricky.
-rw-r--r-- | deluge/conftest.py | 10 | ||||
-rw-r--r-- | deluge/tests/common.py | 2 | ||||
-rw-r--r-- | deluge/tests/daemon_base.py | 12 | ||||
-rw-r--r-- | deluge/tests/test_ui_entry.py | 4 |
4 files changed, 10 insertions, 18 deletions
diff --git a/deluge/conftest.py b/deluge/conftest.py index 51acc6a12..a544ca064 100644 --- a/deluge/conftest.py +++ b/deluge/conftest.py @@ -59,8 +59,9 @@ def mock_callback(): @pytest.fixture def config_dir(tmp_path): - deluge.configmanager.set_config_dir(tmp_path) - yield tmp_path + config_dir = tmp_path / 'config' + deluge.configmanager.set_config_dir(config_dir) + yield config_dir @pytest_twisted.async_yield_fixture() @@ -84,9 +85,10 @@ async def client(request, config_dir, monkeypatch, listen_port): @pytest_twisted.async_yield_fixture -async def daemon(request, config_dir): +async def daemon(request, config_dir, tmp_path): listen_port = DEFAULT_LISTEN_PORT - logfile = f'daemon_{request.node.name}.log' + logfile = tmp_path / 'daemon.log' + if hasattr(request.cls, 'daemon_custom_script'): custom_script = request.cls.daemon_custom_script else: diff --git a/deluge/tests/common.py b/deluge/tests/common.py index 0e82bf12b..b5941568d 100644 --- a/deluge/tests/common.py +++ b/deluge/tests/common.py @@ -113,7 +113,7 @@ class ProcessOutputHandler(protocol.ProcessProtocol): self.shutdown_func = shutdown_func self.log_output = '' self.stderr_out = '' - self.logfile = logfile.replace('/', '_') if logfile else None + self.logfile = logfile self.print_stdout = print_stdout self.print_stderr = print_stderr self.quit_d = None diff --git a/deluge/tests/daemon_base.py b/deluge/tests/daemon_base.py index 3ae86c4ca..707570f17 100644 --- a/deluge/tests/daemon_base.py +++ b/deluge/tests/daemon_base.py @@ -4,8 +4,6 @@ # See LICENSE for more details. # -import os.path - import pytest from twisted.internet import defer from twisted.internet.error import CannotListenError @@ -43,15 +41,7 @@ class DaemonBase: port_range=10, extra_callbacks=None, ): - if logfile == '': - logfile = 'daemon_%s.log' % self.id() - - # We are running py.test - if hasattr(pytest, 'config'): - if self.basetemp: - if not os.path.exists(self.basetemp): - os.makedirs(self.basetemp) - logfile = os.path.join(self.basetemp, logfile) + logfile = f'daemon_{self.id()}.log' if logfile == '' else logfile for dummy in range(port_range): try: diff --git a/deluge/tests/test_ui_entry.py b/deluge/tests/test_ui_entry.py index 3e7ce54b6..5a6d0b771 100644 --- a/deluge/tests/test_ui_entry.py +++ b/deluge/tests/test_ui_entry.py @@ -58,7 +58,7 @@ class StringFileDescriptor: class UIBaseTestCase: def set_up(self): - common.setup_test_logger(level='info', prefix=self.id()) + common.setup_test_logger(level='info', prefix=self.config_dir / self.id()) return component.start() def tear_down(self): @@ -75,7 +75,7 @@ class UIWithDaemonBaseTestCase(UIBaseTestCase, DaemonBase): def set_up(self): d = self.common_set_up() - common.setup_test_logger(level='info', prefix=self.id()) + common.setup_test_logger(level='info', prefix=self.config_dir / self.id()) return d |