Fix test_history for WebKit/WebEngine split

This commit is contained in:
Florian Bruhin 2016-08-10 15:19:12 +02:00
parent 144895d35e
commit bf3579d5b9

View File

@ -29,6 +29,7 @@ from PyQt5.QtCore import QUrl
from PyQt5.QtWebKit import QWebHistoryInterface from PyQt5.QtWebKit import QWebHistoryInterface
from qutebrowser.browser import history from qutebrowser.browser import history
from qutebrowser.browser.webkit import webkithistory
from qutebrowser.utils import objreg from qutebrowser.utils import objreg
@ -371,7 +372,7 @@ def hist_interface():
title='example') title='example')
history_dict = {'http://www.example.com/': entry} history_dict = {'http://www.example.com/': entry}
fake_hist = FakeWebHistory(history_dict) fake_hist = FakeWebHistory(history_dict)
interface = history.WebHistoryInterface(fake_hist) interface = webkithistory.WebHistoryInterface(fake_hist)
QWebHistoryInterface.setDefaultInterface(interface) QWebHistoryInterface.setDefaultInterface(interface)
yield yield
QWebHistoryInterface.setDefaultInterface(None) QWebHistoryInterface.setDefaultInterface(None)
@ -385,11 +386,23 @@ def test_history_interface(qtbot, webview, hist_interface):
webview.load(url) webview.load(url)
def test_init(qapp, tmpdir, monkeypatch, fake_save_manager): @pytest.mark.parametrize('backend', ['webengine', 'webkit'])
def test_init(backend, qapp, tmpdir, monkeypatch, fake_save_manager,
fake_args):
fake_args.backend = backend
monkeypatch.setattr(history.standarddir, 'data', lambda: str(tmpdir)) monkeypatch.setattr(history.standarddir, 'data', lambda: str(tmpdir))
history.init(qapp) history.init(qapp)
hist = objreg.get('web-history') hist = objreg.get('web-history')
assert hist.parent() is qapp assert hist.parent() is qapp
assert QWebHistoryInterface.defaultInterface()._history is hist default_interface = QWebHistoryInterface.defaultInterface()
if backend == 'webkit':
assert default_interface._history is hist
else:
assert backend == 'webengine'
# For this to work, nothing can ever have called setDefaultInterface
# before (so we need to test webengine before webkit)
assert default_interface is None
assert fake_save_manager.add_saveable.called assert fake_save_manager.add_saveable.called
objreg.delete('web-history') objreg.delete('web-history')