diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp | 33 | ||||
-rw-r--r-- | tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp | 3 |
2 files changed, 35 insertions, 1 deletions
diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp index 690cf70e4..207eb019a 100644 --- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp +++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp @@ -241,6 +241,8 @@ private Q_SLOTS: void loadInSignalHandlers(); void restoreHistory(); + void toPlainTextLoadFinishedRace_data(); + void toPlainTextLoadFinishedRace(); private: QWebEngineView* m_view; @@ -5115,5 +5117,36 @@ void tst_QWebEnginePage::restoreHistory() delete channel; } +void tst_QWebEnginePage::toPlainTextLoadFinishedRace_data() +{ + QTest::addColumn<bool>("enableErrorPage"); + QTest::newRow("disableErrorPage") << false; + QTest::newRow("enableErrorPage") << true; +} + +void tst_QWebEnginePage::toPlainTextLoadFinishedRace() +{ + QFETCH(bool, enableErrorPage); + + QWebEnginePage *page = new QWebEnginePage; + page->settings()->setAttribute(QWebEngineSettings::ErrorPageEnabled, enableErrorPage); + QSignalSpy spy(page, SIGNAL(loadFinished(bool))); + + page->load(QUrl("data:text/plain,foobarbaz")); + QTRY_VERIFY(spy.count() == 1); + QCOMPARE(toPlainTextSync(page), QString("foobarbaz")); + + page->load(QUrl("fail:unknown/scheme")); + QTRY_VERIFY(spy.count() == 2); + QString s = toPlainTextSync(page); + QVERIFY(s.contains("foobarbaz") == !enableErrorPage); + + page->load(QUrl("data:text/plain,lalala")); + QTRY_VERIFY(spy.count() == 3); + QCOMPARE(toPlainTextSync(page), QString("lalala")); + delete page; + QVERIFY(spy.count() == 3); +} + QTEST_MAIN(tst_QWebEnginePage) #include "tst_qwebenginepage.moc" diff --git a/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp b/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp index 26980df7b..e73ab637b 100644 --- a/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp +++ b/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp @@ -247,9 +247,10 @@ void tst_QWebEngineProfile::urlSchemeHandlerFailRequest() QWebEngineView view; QSignalSpy loadFinishedSpy(&view, SIGNAL(loadFinished(bool))); view.setPage(new QWebEnginePage(&profile, &view)); + view.settings()->setAttribute(QWebEngineSettings::ErrorPageEnabled, false); view.load(QUrl(QStringLiteral("foo://bar"))); QVERIFY(loadFinishedSpy.wait()); - QVERIFY(toPlainTextSync(view.page()).isEmpty()); + QCOMPARE(toPlainTextSync(view.page()), QString()); } QTEST_MAIN(tst_QWebEngineProfile) |