Use a fixture for FakeWebTab
We need to make sure qapp and tab_registry are available everywhere the FakeWebTab class is used.
This commit is contained in:
parent
0ab601aaf3
commit
e36123735b
@ -122,6 +122,12 @@ def tab_registry(win_registry):
|
|||||||
objreg.delete('tab-registry', scope='window', window=0)
|
objreg.delete('tab-registry', scope='window', window=0)
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def fake_web_tab(stubs, tab_registry, qapp):
|
||||||
|
"""Fixture providing the FakeWebTab *class*."""
|
||||||
|
return stubs.FakeWebTab
|
||||||
|
|
||||||
|
|
||||||
def _generate_cmdline_tests():
|
def _generate_cmdline_tests():
|
||||||
"""Generate testcases for test_split_binding."""
|
"""Generate testcases for test_split_binding."""
|
||||||
# pylint: disable=invalid-name
|
# pylint: disable=invalid-name
|
||||||
|
@ -304,15 +304,15 @@ def test_session_completion(session_manager_stub):
|
|||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
def test_tab_completion(stubs, qtbot, app_stub, win_registry,
|
def test_tab_completion(fake_web_tab, app_stub, win_registry,
|
||||||
tabbed_browser_stubs):
|
tabbed_browser_stubs):
|
||||||
tabbed_browser_stubs[0].tabs = [
|
tabbed_browser_stubs[0].tabs = [
|
||||||
stubs.FakeWebTab(QUrl('https://github.com'), 'GitHub', 0),
|
fake_web_tab(QUrl('https://github.com'), 'GitHub', 0),
|
||||||
stubs.FakeWebTab(QUrl('https://wikipedia.org'), 'Wikipedia', 1),
|
fake_web_tab(QUrl('https://wikipedia.org'), 'Wikipedia', 1),
|
||||||
stubs.FakeWebTab(QUrl('https://duckduckgo.com'), 'DuckDuckGo', 2)
|
fake_web_tab(QUrl('https://duckduckgo.com'), 'DuckDuckGo', 2),
|
||||||
]
|
]
|
||||||
tabbed_browser_stubs[1].tabs = [
|
tabbed_browser_stubs[1].tabs = [
|
||||||
stubs.FakeWebTab(QUrl('https://wiki.archlinux.org'), 'ArchWiki', 0),
|
fake_web_tab(QUrl('https://wiki.archlinux.org'), 'ArchWiki', 0),
|
||||||
]
|
]
|
||||||
actual = _get_completions(miscmodels.TabCompletionModel())
|
actual = _get_completions(miscmodels.TabCompletionModel())
|
||||||
assert actual == [
|
assert actual == [
|
||||||
@ -327,16 +327,16 @@ def test_tab_completion(stubs, qtbot, app_stub, win_registry,
|
|||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
def test_tab_completion_delete(stubs, qtbot, app_stub, win_registry,
|
def test_tab_completion_delete(fake_web_tab, qtbot, app_stub, win_registry,
|
||||||
tabbed_browser_stubs):
|
tabbed_browser_stubs):
|
||||||
"""Verify closing a tab by deleting it from the completion widget."""
|
"""Verify closing a tab by deleting it from the completion widget."""
|
||||||
tabbed_browser_stubs[0].tabs = [
|
tabbed_browser_stubs[0].tabs = [
|
||||||
stubs.FakeWebTab(QUrl('https://github.com'), 'GitHub', 0),
|
fake_web_tab(QUrl('https://github.com'), 'GitHub', 0),
|
||||||
stubs.FakeWebTab(QUrl('https://wikipedia.org'), 'Wikipedia', 1),
|
fake_web_tab(QUrl('https://wikipedia.org'), 'Wikipedia', 1),
|
||||||
stubs.FakeWebTab(QUrl('https://duckduckgo.com'), 'DuckDuckGo', 2)
|
fake_web_tab(QUrl('https://duckduckgo.com'), 'DuckDuckGo', 2)
|
||||||
]
|
]
|
||||||
tabbed_browser_stubs[1].tabs = [
|
tabbed_browser_stubs[1].tabs = [
|
||||||
stubs.FakeWebTab(QUrl('https://wiki.archlinux.org'), 'ArchWiki', 0),
|
fake_web_tab(QUrl('https://wiki.archlinux.org'), 'ArchWiki', 0),
|
||||||
]
|
]
|
||||||
model = miscmodels.TabCompletionModel()
|
model = miscmodels.TabCompletionModel()
|
||||||
view = _mock_view_index(model, 0, 1, qtbot)
|
view = _mock_view_index(model, 0, 1, qtbot)
|
||||||
|
@ -53,9 +53,9 @@ def test_percentage_text(percentage, y, expected):
|
|||||||
assert percentage.text() == expected
|
assert percentage.text() == expected
|
||||||
|
|
||||||
|
|
||||||
def test_tab_change(percentage, stubs, qapp):
|
def test_tab_change(percentage, fake_web_tab):
|
||||||
"""Make sure the percentage gets changed correctly when switching tabs."""
|
"""Make sure the percentage gets changed correctly when switching tabs."""
|
||||||
percentage.set_perc(x=None, y=10)
|
percentage.set_perc(x=None, y=10)
|
||||||
tab = stubs.FakeWebTab(scroll_pos_perc=(0, 20))
|
tab = fake_web_tab(scroll_pos_perc=(0, 20))
|
||||||
percentage.on_tab_changed(tab)
|
percentage.on_tab_changed(tab)
|
||||||
assert percentage.text() == '[20%]'
|
assert percentage.text() == '[20%]'
|
||||||
|
@ -60,14 +60,14 @@ def test_load_started(progress_widget):
|
|||||||
(100, usertypes.LoadStatus.warn, False),
|
(100, usertypes.LoadStatus.warn, False),
|
||||||
(100, usertypes.LoadStatus.none, False),
|
(100, usertypes.LoadStatus.none, False),
|
||||||
])
|
])
|
||||||
def test_tab_changed(qapp, stubs, progress_widget, progress, load_status,
|
def test_tab_changed(fake_web_tab, progress_widget, progress, load_status,
|
||||||
expected_visible):
|
expected_visible):
|
||||||
"""Test that progress widget value and visibility state match expectations.
|
"""Test that progress widget value and visibility state match expectations.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
progress_widget: Progress widget that will be tested.
|
progress_widget: Progress widget that will be tested.
|
||||||
"""
|
"""
|
||||||
tab = stubs.FakeWebTab(progress=progress, load_status=load_status)
|
tab = fake_web_tab(progress=progress, load_status=load_status)
|
||||||
progress_widget.on_tab_changed(tab)
|
progress_widget.on_tab_changed(tab)
|
||||||
actual = progress_widget.value(), progress_widget.isVisible()
|
actual = progress_widget.value(), progress_widget.isVisible()
|
||||||
expected = tab.progress(), expected_visible
|
expected = tab.progress(), expected_visible
|
||||||
|
@ -120,8 +120,8 @@ def test_on_load_status_changed(url_widget, status, expected):
|
|||||||
(url.UrlType.warn, QUrl('www.shadysite.org/some/file/with/issues.htm')),
|
(url.UrlType.warn, QUrl('www.shadysite.org/some/file/with/issues.htm')),
|
||||||
(url.UrlType.error, QUrl('invalid::/url')),
|
(url.UrlType.error, QUrl('invalid::/url')),
|
||||||
])
|
])
|
||||||
def test_on_tab_changed(url_widget, stubs, qapp, load_status, qurl):
|
def test_on_tab_changed(url_widget, fake_web_tab, load_status, qurl):
|
||||||
tab_widget = stubs.FakeWebTab(load_status=load_status, url=qurl)
|
tab_widget = fake_web_tab(load_status=load_status, url=qurl)
|
||||||
url_widget.on_tab_changed(tab_widget)
|
url_widget.on_tab_changed(tab_widget)
|
||||||
assert url_widget._urltype == load_status
|
assert url_widget._urltype == load_status
|
||||||
assert url_widget.text() == qurl.toDisplayString()
|
assert url_widget.text() == qurl.toDisplayString()
|
||||||
|
@ -61,7 +61,7 @@ class TestTabWidget:
|
|||||||
qtbot.addWidget(w)
|
qtbot.addWidget(w)
|
||||||
return w
|
return w
|
||||||
|
|
||||||
def test_small_icon_doesnt_crash(self, widget, qtbot, stubs):
|
def test_small_icon_doesnt_crash(self, widget, qtbot, fake_web_tab):
|
||||||
"""Test that setting a small icon doesn't produce a crash.
|
"""Test that setting a small icon doesn't produce a crash.
|
||||||
|
|
||||||
Regression test for #1015.
|
Regression test for #1015.
|
||||||
@ -69,7 +69,7 @@ class TestTabWidget:
|
|||||||
# Size taken from issue report
|
# Size taken from issue report
|
||||||
pixmap = QPixmap(72, 1)
|
pixmap = QPixmap(72, 1)
|
||||||
icon = QIcon(pixmap)
|
icon = QIcon(pixmap)
|
||||||
tab = stubs.FakeWebTab()
|
tab = fake_web_tab()
|
||||||
widget.addTab(tab, icon, 'foobar')
|
widget.addTab(tab, icon, 'foobar')
|
||||||
widget.show()
|
widget.show()
|
||||||
qtbot.waitForWindowShown(widget)
|
qtbot.waitForWindowShown(widget)
|
||||||
|
Loading…
Reference in New Issue
Block a user