diff options
Diffstat (limited to 'tests/unit/mainwindow/statusbar/test_url.py')
-rw-r--r-- | tests/unit/mainwindow/statusbar/test_url.py | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/tests/unit/mainwindow/statusbar/test_url.py b/tests/unit/mainwindow/statusbar/test_url.py index efe4d6f93..353c47a3c 100644 --- a/tests/unit/mainwindow/statusbar/test_url.py +++ b/tests/unit/mainwindow/statusbar/test_url.py @@ -22,9 +22,9 @@ import pytest -from PyQt5.QtCore import QUrl +from qutebrowser.qt.core import QUrl -from qutebrowser.utils import usertypes, urlutils +from qutebrowser.utils import usertypes, urlutils, qtutils from qutebrowser.mainwindow.statusbar import url @@ -37,6 +37,18 @@ def url_widget(qtbot, monkeypatch, config_stub): return widget +qurl_idna2003 = pytest.mark.skipif( + qtutils.version_check("6.3.0", compiled=False), + reason="Different result with Qt >= 6.3.0: " + "https://bugreports.qt.io/browse/QTBUG-85371" +) +qurl_uts46 = pytest.mark.xfail( + not qtutils.version_check("6.3.0", compiled=False), + reason="Different result with Qt < 6.3.0: " + "https://bugreports.qt.io/browse/QTBUG-85371" +) + + @pytest.mark.parametrize('url_text, expected', [ ('http://example.com/foo/bar.html', 'http://example.com/foo/bar.html'), ('http://test.gr/%CE%B1%CE%B2%CE%B3%CE%B4.txt', 'http://test.gr/αβγδ.txt'), @@ -46,7 +58,16 @@ def url_widget(qtbot, monkeypatch, config_stub): ('http://username:secret%20password@test.com', 'http://username@test.com'), ('http://example.com%5b/', '(invalid URL!) http://example.com%5b/'), # https://bugreports.qt.io/browse/QTBUG-60364 - ('http://www.xn--80ak6aa92e.com', 'http://www.xn--80ak6aa92e.com'), + pytest.param( + 'http://www.xn--80ak6aa92e.com', + 'http://www.xn--80ak6aa92e.com', + marks=qurl_idna2003 + ), + pytest.param( + 'http://www.xn--80ak6aa92e.com', + '(www.xn--80ak6aa92e.com) http://www.аррӏе.com', + marks=qurl_uts46, + ), # IDN URL ('http://www.ä.com', '(www.xn--4ca.com) http://www.ä.com'), (None, ''), |