From f46d6cbe27f147634fc1d3000f9dd4c8fda116f1 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 11 Jul 2016 15:02:57 +0200 Subject: [PATCH] Fix url_text, take 3 --- qutebrowser/mainwindow/statusbar/url.py | 7 +++++-- tests/unit/mainwindow/statusbar/test_url.py | 19 +++++++++---------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/qutebrowser/mainwindow/statusbar/url.py b/qutebrowser/mainwindow/statusbar/url.py index e4e1b4a3d..1bbefadf4 100644 --- a/qutebrowser/mainwindow/statusbar/url.py +++ b/qutebrowser/mainwindow/statusbar/url.py @@ -134,9 +134,12 @@ class UrlText(textbase.TextBase): """Setter to be used as a Qt slot. Args: - url: The URL to set as QUrl. + url: The URL to set as QUrl, or None. """ - self._normal_url = url.toDisplayString() + if url is None: + self._normal_url = None + else: + self._normal_url = url.toDisplayString() self._normal_url_type = UrlType.normal self._update_url() diff --git a/tests/unit/mainwindow/statusbar/test_url.py b/tests/unit/mainwindow/statusbar/test_url.py index 0a6193c83..1fe201bff 100644 --- a/tests/unit/mainwindow/statusbar/test_url.py +++ b/tests/unit/mainwindow/statusbar/test_url.py @@ -51,17 +51,16 @@ def url_widget(qtbot, monkeypatch, config_stub): return widget -@pytest.mark.parametrize('url_text', [ - 'http://abc123.com/this/awesome/url.html', - 'https://supersecret.gov/nsa/files.txt', - 'Th1$ i$ n0t @ n0rm@L uRL! P@n1c! <-->', +@pytest.mark.parametrize('qurl', [ + QUrl('http://abc123.com/this/awesome/url.html'), + QUrl('https://supersecret.gov/nsa/files.txt'), None ]) -def test_set_url(url_widget, url_text): +def test_set_url(url_widget, qurl): """Test text displayed by the widget.""" - url_widget.set_url(url_text) - if url_text is not None: - assert url_widget.text() == url_text + url_widget.set_url(qurl) + if qurl is not None: + assert url_widget.text() == qurl.toDisplayString() else: assert url_widget.text() == "" @@ -107,7 +106,7 @@ def test_set_hover_url_encoded(url_widget, url_text, expected): ]) def test_on_load_status_changed(url_widget, status, expected): """Test text when status is changed.""" - url_widget.set_url('www.example.com') + url_widget.set_url(QUrl('www.example.com')) url_widget.on_load_status_changed(status.name) assert url_widget._urltype == expected @@ -154,5 +153,5 @@ def test_normal_url(url_widget, qurl, load_status, expected_status): url_widget.on_load_status_changed(load_status.name) url_widget.set_hover_url(qurl.toDisplayString()) url_widget.set_hover_url("") - assert url_widget.text() == url_text + assert url_widget.text() == qurl.toDisplayString() assert url_widget._urltype == expected_status