summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp33
-rw-r--r--tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp3
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 9195a5190..7cd423356 100644
--- a/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp
+++ b/tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp
@@ -182,9 +182,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)