summaryrefslogtreecommitdiff
path: root/tests/unit/mainwindow/statusbar/test_url.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/mainwindow/statusbar/test_url.py')
-rw-r--r--tests/unit/mainwindow/statusbar/test_url.py27
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, ''),