diff options
Diffstat (limited to 'tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp')
-rw-r--r-- | tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp index d5f651384..4413ba615 100644 --- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp +++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp @@ -612,21 +612,26 @@ void tst_QWebEnginePage::acceptNavigationRequestNavigationType() void tst_QWebEnginePage::popupFormSubmission() { TestPage page; + QSignalSpy loadFinishedSpy(&page, SIGNAL(loadFinished(bool))); QSignalSpy windowCreatedSpy(&page, SIGNAL(windowCreated())); + page.settings()->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, true); - page.setHtml("<form name=form1 method=get action='' target=myNewWin>"\ - "<input type=hidden name=foo value='bar'>"\ - "</form>"); - page.runJavaScript("window.open('', 'myNewWin', 'width=500,height=300,toolbar=0')"); - evaluateJavaScriptSync(&page, "document.form1.submit();"); + page.setHtml("<form name='form1' method=get action='' target='myNewWin'>" + " <input type='hidden' name='foo' value='bar'>" + "</form>"); + QTRY_COMPARE(loadFinishedSpy.count(), 1); + page.runJavaScript("window.open('', 'myNewWin', 'width=500,height=300,toolbar=0');"); + evaluateJavaScriptSync(&page, "document.form1.submit();"); QTRY_COMPARE(windowCreatedSpy.count(), 1); + // The number of popup created should be one. QVERIFY(page.createdWindows.size() == 1); - QString url = page.createdWindows.takeFirst()->url().toString(); + QTRY_VERIFY(!page.createdWindows[0]->url().isEmpty()); + QString url = page.createdWindows[0]->url().toString(); + // Check if the form submission was OK. - QEXPECT_FAIL("", "https://bugs.webkit.org/show_bug.cgi?id=118597", Continue); QVERIFY(url.contains("?foo=bar")); } |