summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp')
-rw-r--r--tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp b/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
index 3287ca309..5f05f70ab 100644
--- a/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
+++ b/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp
@@ -46,6 +46,7 @@
#include <QTcpSocket>
#include <QStyle>
#include <QtWidgets/qaction.h>
+#include <QWebEngineProfile>
#define VERIFY_INPUTMETHOD_HINTS(actual, expect) \
QVERIFY(actual == (expect | Qt::ImhNoPredictiveText | Qt::ImhNoTextHandles | Qt::ImhNoEditMenu));
@@ -193,6 +194,7 @@ private Q_SLOTS:
void jsKeyboardEvent();
void deletePage();
void closeOpenerTab();
+ void switchPage();
};
// This will be called before the first test function is executed.
@@ -3173,5 +3175,26 @@ void tst_QWebEngineView::closeOpenerTab()
QVERIFY(newView->focusProxy()->isVisible());
}
+void tst_QWebEngineView::switchPage()
+{
+ QWebEngineProfile profile;
+ QWebEnginePage page1(&profile);
+ QWebEnginePage page2(&profile);
+ QSignalSpy loadFinishedSpy1(&page1, SIGNAL(loadFinished(bool)));
+ QSignalSpy loadFinishedSpy2(&page2, SIGNAL(loadFinished(bool)));
+ page1.setHtml("<html><body bgcolor=\"#000000\"></body></html>");
+ page2.setHtml("<html><body bgcolor=\"#ffffff\"></body></html>");
+ QTRY_VERIFY(loadFinishedSpy1.count() && loadFinishedSpy2.count());
+ QWebEngineView webView;
+ webView.resize(300,300);
+ webView.show();
+ webView.setPage(&page1);
+ QTRY_COMPARE(webView.grab().toImage().pixelColor(QPoint(150,150)), Qt::black);
+ webView.setPage(&page2);
+ QTRY_COMPARE(webView.grab().toImage().pixelColor(QPoint(150,150)), Qt::white);
+ webView.setPage(&page1);
+ QTRY_COMPARE(webView.grab().toImage().pixelColor(QPoint(150,150)), Qt::black);
+}
+
QTEST_MAIN(tst_QWebEngineView)
#include "tst_qwebengineview.moc"