diff options
Diffstat (limited to 'tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp')
-rw-r--r-- | tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp b/tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp index cacfc1a3c..9381b3930 100644 --- a/tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp +++ b/tests/auto/widgets/qwebengineschemes/tst_qwebengineschemes.cpp @@ -49,8 +49,10 @@ public: { } int acceptNavigationRequestCalls = 0; - bool acceptNavigationRequest(const QUrl &/*url*/, NavigationType /*type*/, bool /*isMainFrame*/) override + bool acceptNavigationRequest(const QUrl &/*url*/, NavigationType type, bool /*isMainFrame*/) override { + if (type == QWebEnginePage::NavigationTypeTyped) + return true; this->acceptNavigationRequestCalls++; return false; } @@ -60,13 +62,14 @@ void tst_QWebEngineSchemes::unknownUrlSchemePolicy() { QWebEngineView view; AcceptNavigationRequestHandler page; + QSignalSpy loadFinishedSpy(&page, &QWebEnginePage::loadFinished); view.setPage(&page); view.resize(400, 40); view.show(); QVERIFY(QTest::qWaitForWindowExposed(&view)); QWebEngineSettings *settings = view.page()->profile()->settings(); + settings->setAttribute(QWebEngineSettings::ErrorPageEnabled, false); settings->setAttribute(QWebEngineSettings::FocusOnNavigationEnabled, true); - QSignalSpy loadFinishedSpy(&view, &QWebEngineView::loadFinished); QWebEngineSettings::UnknownUrlSchemePolicy policies[6] = {QWebEngineSettings::DisallowUnknownUrlSchemes, QWebEngineSettings::DisallowUnknownUrlSchemes, @@ -91,7 +94,7 @@ void tst_QWebEngineSchemes::unknownUrlSchemePolicy() } else { // navigation request coming from user interaction shouldAccept = (2 <= i); // all cases except DisallowUnknownUrlSchemes view.setHtml("<html><body><a id='nonexlink' href='nonexistentscheme://somewhere'>nonexistentscheme://somewhere</a></body></html>"); - QTRY_COMPARE_WITH_TIMEOUT(loadFinishedSpy.size(), 1, 30000); + QTRY_COMPARE_WITH_TIMEOUT(loadFinishedSpy.size(), 1, 15000); // focus and trigger the link view.page()->runJavaScript("document.getElementById('nonexlink').focus();", [&view](const QVariant &result) { Q_UNUSED(result); @@ -101,7 +104,7 @@ void tst_QWebEngineSchemes::unknownUrlSchemePolicy() } bool errorPageEnabled = settings->testAttribute(QWebEngineSettings::ErrorPageEnabled); - QTRY_COMPARE_WITH_TIMEOUT(loadFinishedSpy.size(), 2 + (errorPageEnabled ? 1 : 0), 30000); + QTRY_COMPARE_WITH_TIMEOUT(loadFinishedSpy.size(), 2 + (errorPageEnabled ? 1 : 0), 15000); QCOMPARE(page.acceptNavigationRequestCalls, shouldAccept ? 1 : 0); } } |