summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Albrecht <palbrecht@mailbox.org>2023-07-14 10:01:37 +0200
committerPhilipp Albrecht <palbrecht@mailbox.org>2023-07-20 15:09:48 +0200
commite3a58e84c6dbe9b177ba4aa2d2e22b73849d265d (patch)
treeb267befc85ec88908eafa66d0bc8be2a5489ba82
parentf91ace96223cac8161c16dd061907e138fe85111 (diff)
downloadqutebrowser-e3a58e84c6dbe9b177ba4aa2d2e22b73849d265d.tar.gz
qutebrowser-e3a58e84c6dbe9b177ba4aa2d2e22b73849d265d.zip
Don't crash on --logfilter
-rw-r--r--qutebrowser/misc/earlyinit.py3
-rw-r--r--qutebrowser/utils/log.py2
-rw-r--r--tests/end2end/test_invocations.py13
-rw-r--r--tests/unit/utils/test_qtlog.py4
4 files changed, 17 insertions, 5 deletions
diff --git a/qutebrowser/misc/earlyinit.py b/qutebrowser/misc/earlyinit.py
index a0265d653..bf6da7b74 100644
--- a/qutebrowser/misc/earlyinit.py
+++ b/qutebrowser/misc/earlyinit.py
@@ -295,8 +295,9 @@ def init_log(args):
Args:
args: The argparse namespace.
"""
- from qutebrowser.utils import log
+ from qutebrowser.utils import log, qtlog
log.init_log(args)
+ qtlog.init(args)
log.init.debug("Log initialized.")
log.init.debug(str(machinery.INFO))
diff --git a/qutebrowser/utils/log.py b/qutebrowser/utils/log.py
index 0188f594e..ece0bd5e0 100644
--- a/qutebrowser/utils/log.py
+++ b/qutebrowser/utils/log.py
@@ -31,7 +31,6 @@ import argparse
from typing import (TYPE_CHECKING, Any, Iterator, Mapping, MutableSequence,
Optional, Set, Tuple, Union, TextIO, Literal, cast)
-from qutebrowser.utils import qtlog
# Optional imports
try:
import colorama
@@ -205,7 +204,6 @@ def init_log(args: argparse.Namespace) -> None:
root.setLevel(logging.NOTSET)
logging.captureWarnings(True)
_init_py_warnings()
- qtlog.init(args)
_log_inited = True
diff --git a/tests/end2end/test_invocations.py b/tests/end2end/test_invocations.py
index 56524a031..caa86dfbb 100644
--- a/tests/end2end/test_invocations.py
+++ b/tests/end2end/test_invocations.py
@@ -25,6 +25,7 @@ import importlib
import re
import json
import platform
+from contextlib import nullcontext as does_not_raise
import pytest
from qutebrowser.qt.core import QProcess, QPoint
@@ -916,3 +917,15 @@ def test_sandboxing(
status = dict(line.split("\t") for line in lines)
assert status == expected_status
+
+
+@pytest.mark.not_frozen
+def test_logfilter_arg_does_not_crash(request, quteproc_new):
+ args = ['--temp-basedir', '--debug', '--logfilter', 'commands, init, ipc, webview']
+
+ with does_not_raise():
+ quteproc_new.start(args=args + _base_args(request.config))
+
+ # Waiting for quit to make sure no other warning is emitted
+ quteproc_new.send_cmd(':quit')
+ quteproc_new.wait_for_quit()
diff --git a/tests/unit/utils/test_qtlog.py b/tests/unit/utils/test_qtlog.py
index 099a7a33f..3dd62b9a9 100644
--- a/tests/unit/utils/test_qtlog.py
+++ b/tests/unit/utils/test_qtlog.py
@@ -24,7 +24,7 @@ import logging
import pytest
from qutebrowser import qutebrowser
-from qutebrowser.utils import log, qtlog
+from qutebrowser.utils import qtlog
from qutebrowser.qt import core as qtcore
@@ -45,7 +45,7 @@ class TestQtMessageHandler:
def init_args(self):
parser = qutebrowser.get_argparser()
args = parser.parse_args([])
- log.init_log(args)
+ qtlog.init(args)
def test_empty_message(self, caplog):
"""Make sure there's no crash with an empty message."""