diff options
Diffstat (limited to 'tests/unit/browser/test_qutescheme.py')
-rw-r--r-- | tests/unit/browser/test_qutescheme.py | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/tests/unit/browser/test_qutescheme.py b/tests/unit/browser/test_qutescheme.py index e4aa51243..3caee5621 100644 --- a/tests/unit/browser/test_qutescheme.py +++ b/tests/unit/browser/test_qutescheme.py @@ -24,11 +24,11 @@ import time import logging import py.path -from PyQt5.QtCore import QUrl, QUrlQuery +from qutebrowser.qt.core import QUrl, QUrlQuery import pytest from qutebrowser.browser import qutescheme, pdfjs, downloads -from qutebrowser.utils import resources +from qutebrowser.utils import resources, urlmatch from qutebrowser.misc import guiprocess @@ -291,3 +291,37 @@ class TestPDFJSHandler: url.setQuery(query) with pytest.raises(qutescheme.RequestDeniedError): qutescheme.data_for_url(url) + + +class TestQuteConfigdiff: + + """Test the qute://configdiff handler.""" + + @pytest.fixture(autouse=True) + def prepare_config(self, config_stub): + config_stub.set_obj( + "content.javascript.enabled", + True, + pattern=urlmatch.UrlPattern("chrome-devtools://*"), + hide_userconfig=True, + ) + + @pytest.mark.parametrize("url, expected", [ + ( + "qute://configdiff/", + b"<Default configuration>", + ), + ( + "qute://configdiff/?include_hidden=true", + b'chrome-devtools://*: content.javascript.enabled = true', + ) + ]) + def test_default_config(self, config_stub, url, expected): + _mimetype, data = qutescheme.data_for_url(QUrl(url)) + assert data == expected + + def test_changes(self, config_stub): + config_stub.set_obj("content.images", False) + url = QUrl('qute://configdiff/') + _mimetype, data = qutescheme.data_for_url(url) + assert data == b'content.images = false' |