Make test_simple_js_webengine work correctly
This commit is contained in:
parent
6dbd6d1ddf
commit
2249a88e3a
@ -47,15 +47,32 @@ def test_element_js_webkit(webview, js_enabled, expected):
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('redirect_webengine_data')
|
||||
@pytest.mark.parametrize('js_enabled, expected', [(True, 2.0), (False, 2.0)])
|
||||
def test_simple_js_webengine(callback_checker, webengineview, js_enabled,
|
||||
expected):
|
||||
@pytest.mark.parametrize('js_enabled, world, expected', [
|
||||
# main world
|
||||
(True, 0, 2.0),
|
||||
(False, 0, None),
|
||||
# application world
|
||||
(True, 1, 2.0),
|
||||
(False, 1, 2.0),
|
||||
# user world
|
||||
(True, 2, 2.0),
|
||||
(False, 2, 2.0),
|
||||
])
|
||||
def test_simple_js_webengine(callback_checker, webengineview, qapp,
|
||||
js_enabled, world, expected):
|
||||
"""With QtWebEngine, runJavaScript works even when JS is off."""
|
||||
# If we get there (because of the webengineview fixture) we can be certain
|
||||
# QtWebEngine is available
|
||||
from PyQt5.QtWebEngineWidgets import QWebEngineSettings
|
||||
webengineview.settings().setAttribute(QWebEngineSettings.JavascriptEnabled,
|
||||
js_enabled)
|
||||
from PyQt5.QtWebEngineWidgets import QWebEngineSettings, QWebEngineScript
|
||||
|
||||
webengineview.page().runJavaScript('1 + 1', callback_checker.callback)
|
||||
assert world in [QWebEngineScript.MainWorld,
|
||||
QWebEngineScript.ApplicationWorld,
|
||||
QWebEngineScript.UserWorld]
|
||||
|
||||
settings = webengineview.settings()
|
||||
settings.setAttribute(QWebEngineSettings.JavascriptEnabled, js_enabled)
|
||||
qapp.processEvents()
|
||||
|
||||
page = webengineview.page()
|
||||
page.runJavaScript('1 + 1', world, callback_checker.callback)
|
||||
callback_checker.check(expected)
|
||||
|
Loading…
Reference in New Issue
Block a user