summaryrefslogtreecommitdiffstats
path: root/tests/widgets/qwebengineview/tst_qwebengineview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/widgets/qwebengineview/tst_qwebengineview.cpp')
-rw-r--r--tests/widgets/qwebengineview/tst_qwebengineview.cpp140
1 files changed, 69 insertions, 71 deletions
diff --git a/tests/widgets/qwebengineview/tst_qwebengineview.cpp b/tests/widgets/qwebengineview/tst_qwebengineview.cpp
index 9d08f677d..e535e3910 100644
--- a/tests/widgets/qwebengineview/tst_qwebengineview.cpp
+++ b/tests/widgets/qwebengineview/tst_qwebengineview.cpp
@@ -23,17 +23,17 @@
#include "../util.h"
#include <qpainter.h>
-#include <qwebview.h>
-#include <qwebpage.h>
+#include <qwebengineview.h>
+#include <qwebenginepage.h>
#include <qnetworkrequest.h>
#include <qdiriterator.h>
-#include <qwebelement.h>
-#include <qwebframe.h>
+#include <qwebengineelement.h>
+#include <qwebengineframe.h>
#define VERIFY_INPUTMETHOD_HINTS(actual, expect) \
QVERIFY(actual == expect);
-class tst_QWebView : public QObject
+class tst_QWebEngineView : public QObject
{
Q_OBJECT
@@ -63,29 +63,29 @@ private Q_SLOTS:
// This will be called before the first test function is executed.
// It is only called once.
-void tst_QWebView::initTestCase()
+void tst_QWebEngineView::initTestCase()
{
}
// This will be called after the last test function is executed.
// It is only called once.
-void tst_QWebView::cleanupTestCase()
+void tst_QWebEngineView::cleanupTestCase()
{
}
// This will be called before each test function is executed.
-void tst_QWebView::init()
+void tst_QWebEngineView::init()
{
}
// This will be called after every test function.
-void tst_QWebView::cleanup()
+void tst_QWebEngineView::cleanup()
{
}
-void tst_QWebView::renderHints()
+void tst_QWebEngineView::renderHints()
{
- QWebView webView;
+ QWebEngineView webView;
// default is only text antialiasing + smooth pixmap transform
QVERIFY(!(webView.renderHints() & QPainter::Antialiasing));
@@ -117,12 +117,12 @@ void tst_QWebView::renderHints()
QVERIFY(!(webView.renderHints() & QPainter::HighQualityAntialiasing));
}
-void tst_QWebView::getWebKitVersion()
+void tst_QWebEngineView::getWebKitVersion()
{
QVERIFY(qWebKitVersion().toDouble() > 0);
}
-void tst_QWebView::reusePage_data()
+void tst_QWebEngineView::reusePage_data()
{
QTest::addColumn<QString>("html");
QTest::newRow("WithoutPlugin") << "<html><body id='b'>text</body></html>";
@@ -130,7 +130,7 @@ void tst_QWebView::reusePage_data()
QTest::newRow("WindowlessPlugin") << QString("<html><body id='b'>text<embed src='resources/test.swf' wmode=\"transparent\"></embed></body></html>");
}
-void tst_QWebView::reusePage()
+void tst_QWebEngineView::reusePage()
{
if (!QDir(TESTS_SOURCE_DIR).exists())
W_QSKIP(QString("This test requires access to resources found in '%1'").arg(TESTS_SOURCE_DIR).toLatin1().constData(), SkipAll);
@@ -138,12 +138,11 @@ void tst_QWebView::reusePage()
QDir::setCurrent(TESTS_SOURCE_DIR);
QFETCH(QString, html);
- QWebView* view1 = new QWebView;
- QPointer<QWebPage> page = new QWebPage;
+ QWebEngineView* view1 = new QWebEngineView;
+ QPointer<QWebEnginePage> page = new QWebEnginePage;
view1->setPage(page.data());
- page.data()->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
- QWebFrame* mainFrame = page.data()->mainFrame();
- mainFrame->setHtml(html, QUrl::fromLocalFile(TESTS_SOURCE_DIR));
+ page.data()->settings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
+ page->setHtml(html, QUrl::fromLocalFile(TESTS_SOURCE_DIR));
if (html.contains("</embed>")) {
// some reasonable time for the PluginStream to feed test.swf to flash and start painting
waitForSignal(view1, SIGNAL(loadFinished(bool)), 2000);
@@ -154,7 +153,7 @@ void tst_QWebView::reusePage()
delete view1;
QVERIFY(page != 0); // deleting view must not have deleted the page, since it's not a child of view
- QWebView *view2 = new QWebView;
+ QWebEngineView *view2 = new QWebEngineView;
view2->setPage(page.data());
view2->show(); // in Windowless mode, you should still be able to see the plugin here
QTest::qWaitForWindowExposed(view2);
@@ -168,12 +167,12 @@ void tst_QWebView::reusePage()
// Class used in crashTests
class WebViewCrashTest : public QObject {
Q_OBJECT
- QWebView* m_view;
+ QWebEngineView* m_view;
public:
bool m_executed;
- WebViewCrashTest(QWebView* view)
+ WebViewCrashTest(QWebEngineView* view)
: m_view(view)
, m_executed(false)
{
@@ -193,24 +192,24 @@ private Q_SLOTS:
// Should not crash.
-void tst_QWebView::crashTests()
+void tst_QWebEngineView::crashTests()
{
// Test if loading can be stopped in loadProgress handler without crash.
// Test page should have frames.
- QWebView view;
+ QWebEngineView view;
WebViewCrashTest tester(&view);
QUrl url("qrc:///resources/index.html");
view.load(url);
QTRY_VERIFY(tester.m_executed); // If fail it means that the test wasn't executed.
}
-void tst_QWebView::microFocusCoordinates()
+void tst_QWebEngineView::microFocusCoordinates()
{
- QWebPage* page = new QWebPage;
- QWebView* webView = new QWebView;
+ QWebEnginePage* page = new QWebEnginePage;
+ QWebEngineView* webView = new QWebEngineView;
webView->setPage( page );
- page->mainFrame()->setHtml("<html><body>" \
+ page->setHtml("<html><body>" \
"<input type='text' id='input1' style='font--family: serif' value='' maxlength='20'/><br>" \
"<canvas id='canvas1' width='500' height='500'></canvas>" \
"<input type='password'/><br>" \
@@ -222,7 +221,7 @@ void tst_QWebView::microFocusCoordinates()
QVariant initialMicroFocus = page->inputMethodQuery(Qt::ImMicroFocus);
QVERIFY(initialMicroFocus.isValid());
- page->mainFrame()->scroll(0,50);
+ page->scroll(0,50);
QVariant currentMicroFocus = page->inputMethodQuery(Qt::ImMicroFocus);
QVERIFY(currentMicroFocus.isValid());
@@ -230,21 +229,21 @@ void tst_QWebView::microFocusCoordinates()
QCOMPARE(initialMicroFocus.toRect().translated(QPoint(0,-50)), currentMicroFocus.toRect());
}
-void tst_QWebView::focusInputTypes()
+void tst_QWebEngineView::focusInputTypes()
{
- QWebView webView;
+ QWebEngineView webView;
webView.show();
QTest::qWaitForWindowExposed(&webView);
QUrl url("qrc:///resources/input_types.html");
- QWebFrame* const mainFrame = webView.page()->mainFrame();
- mainFrame->load(url);
+ QWebEngineFrame* const mainFrame = webView.page()->mainFrame();
+ webView.load(url);
mainFrame->setFocus();
QVERIFY(waitForSignal(&webView, SIGNAL(loadFinished(bool))));
// 'text' type
- QWebElement inputElement = mainFrame->documentElement().findFirst(QLatin1String("input[type=text]"));
+ QWebEngineElement inputElement = mainFrame->documentElement().findFirst(QLatin1String("input[type=text]"));
QTest::mouseClick(&webView, Qt::LeftButton, 0, inputElement.geometry().center());
QVERIFY(webView.inputMethodHints() == Qt::ImhNone);
QVERIFY(webView.testAttribute(Qt::WA_InputMethodEnabled));
@@ -304,34 +303,33 @@ void tst_QWebView::focusInputTypes()
QVERIFY(webView.testAttribute(Qt::WA_InputMethodEnabled));
}
-void tst_QWebView::horizontalScrollbarTest()
+void tst_QWebEngineView::horizontalScrollbarTest()
{
- QWebView webView;
+ QWebEngineView webView;
webView.resize(600, 600);
webView.show();
QTest::qWaitForWindowExposed(&webView);
QUrl url("qrc:///resources/scrolltest_page.html");
- QWebFrame* const mainFrame = webView.page()->mainFrame();
- mainFrame->load(url);
- mainFrame->setFocus();
+ webView.page()->load(url);
+ webView.page()->setFocus();
QVERIFY(waitForSignal(&webView, SIGNAL(loadFinished(bool))));
- QVERIFY(webView.page()->mainFrame()->scrollPosition() == QPoint(0, 0));
+ QVERIFY(webView.page()->scrollPosition() == QPoint(0, 0));
// Note: The test below assumes that the layout direction is Qt::LeftToRight.
QTest::mouseClick(&webView, Qt::LeftButton, 0, QPoint(550, 595));
- QVERIFY(webView.page()->mainFrame()->scrollPosition().x() > 0);
+ QVERIFY(webView.page()->scrollPosition().x() > 0);
// Note: The test below assumes that the layout direction is Qt::LeftToRight.
QTest::mouseClick(&webView, Qt::LeftButton, 0, QPoint(20, 595));
- QVERIFY(webView.page()->mainFrame()->scrollPosition() == QPoint(0, 0));
+ QVERIFY(webView.page()->scrollPosition() == QPoint(0, 0));
}
#if !(defined(WTF_USE_QT_MOBILE_THEME) && WTF_USE_QT_MOBILE_THEME)
-void tst_QWebView::setPalette_data()
+void tst_QWebEngineView::setPalette_data()
{
QTest::addColumn<bool>("active");
QTest::addColumn<bool>("background");
@@ -341,10 +339,10 @@ void tst_QWebView::setPalette_data()
QTest::newRow("inactiveFG") << false << false;
}
-// Render a QWebView to a QImage twice, each time with a different palette set,
+// Render a QWebEngineView to a QImage twice, each time with a different palette set,
// verify that images rendered are not the same, confirming WebCore usage of
// custom palette on selections.
-void tst_QWebView::setPalette()
+void tst_QWebEngineView::setPalette()
{
QString html = "<html><head></head>"
"<body>"
@@ -359,31 +357,31 @@ void tst_QWebView::setPalette()
// Use controlView to manage active/inactive state of test views by raising
// or lowering their position in the window stack.
- QWebView controlView;
+ QWebEngineView controlView;
controlView.setHtml(html);
- QWebView view1;
+ QWebEngineView view1;
QPalette palette1;
QBrush brush1(Qt::red);
brush1.setStyle(Qt::SolidPattern);
if (active && background) {
- // Rendered image must have red background on an active QWebView.
+ // Rendered image must have red background on an active QWebEngineView.
palette1.setBrush(QPalette::Active, QPalette::Highlight, brush1);
} else if (active && !background) {
- // Rendered image must have red foreground on an active QWebView.
+ // Rendered image must have red foreground on an active QWebEngineView.
palette1.setBrush(QPalette::Active, QPalette::HighlightedText, brush1);
} else if (!active && background) {
- // Rendered image must have red background on an inactive QWebView.
+ // Rendered image must have red background on an inactive QWebEngineView.
palette1.setBrush(QPalette::Inactive, QPalette::Highlight, brush1);
} else if (!active && !background) {
- // Rendered image must have red foreground on an inactive QWebView.
+ // Rendered image must have red foreground on an inactive QWebEngineView.
palette1.setBrush(QPalette::Inactive, QPalette::HighlightedText, brush1);
}
view1.setPalette(palette1);
view1.setHtml(html);
- view1.page()->setViewportSize(view1.page()->currentFrame()->contentsSize());
+ view1.page()->setViewportSize(view1.page()->contentsSize());
view1.show();
QTest::qWaitForWindowExposed(&view1);
@@ -400,37 +398,37 @@ void tst_QWebView::setPalette()
QTRY_COMPARE(QApplication::activeWindow(), activeView);
- view1.page()->triggerAction(QWebPage::SelectAll);
+ view1.page()->triggerAction(QWebEnginePage::SelectAll);
QImage img1(view1.page()->viewportSize(), QImage::Format_ARGB32);
QPainter painter1(&img1);
- view1.page()->currentFrame()->render(&painter1);
+ view1.page()->render(&painter1);
painter1.end();
view1.close();
controlView.close();
- QWebView view2;
+ QWebEngineView view2;
QPalette palette2;
QBrush brush2(Qt::blue);
brush2.setStyle(Qt::SolidPattern);
if (active && background) {
- // Rendered image must have blue background on an active QWebView.
+ // Rendered image must have blue background on an active QWebEngineView.
palette2.setBrush(QPalette::Active, QPalette::Highlight, brush2);
} else if (active && !background) {
- // Rendered image must have blue foreground on an active QWebView.
+ // Rendered image must have blue foreground on an active QWebEngineView.
palette2.setBrush(QPalette::Active, QPalette::HighlightedText, brush2);
} else if (!active && background) {
- // Rendered image must have blue background on an inactive QWebView.
+ // Rendered image must have blue background on an inactive QWebEngineView.
palette2.setBrush(QPalette::Inactive, QPalette::Highlight, brush2);
} else if (!active && !background) {
- // Rendered image must have blue foreground on an inactive QWebView.
+ // Rendered image must have blue foreground on an inactive QWebEngineView.
palette2.setBrush(QPalette::Inactive, QPalette::HighlightedText, brush2);
}
view2.setPalette(palette2);
view2.setHtml(html);
- view2.page()->setViewportSize(view2.page()->currentFrame()->contentsSize());
+ view2.page()->setViewportSize(view2.page()->contentsSize());
view2.show();
QTest::qWaitForWindowExposed(&view2);
@@ -447,11 +445,11 @@ void tst_QWebView::setPalette()
QTRY_COMPARE(QApplication::activeWindow(), activeView);
- view2.page()->triggerAction(QWebPage::SelectAll);
+ view2.page()->triggerAction(QWebEnginePage::SelectAll);
QImage img2(view2.page()->viewportSize(), QImage::Format_ARGB32);
QPainter painter2(&img2);
- view2.page()->currentFrame()->render(&painter2);
+ view2.page()->render(&painter2);
painter2.end();
view2.close();
@@ -461,15 +459,15 @@ void tst_QWebView::setPalette()
}
#endif
-void tst_QWebView::renderingAfterMaxAndBack()
+void tst_QWebEngineView::renderingAfterMaxAndBack()
{
QUrl url = QUrl("data:text/html,<html><head></head>"
"<body width=1024 height=768 bgcolor=red>"
"</body>"
"</html>");
- QWebView view;
- view.page()->mainFrame()->load(url);
+ QWebEngineView view;
+ view.page()->load(url);
QVERIFY(waitForSignal(&view, SIGNAL(loadFinished(bool))));
view.show();
@@ -482,7 +480,7 @@ void tst_QWebView::renderingAfterMaxAndBack()
QPixmap image(view.page()->viewportSize());
QPainter painter(&image);
- view.page()->currentFrame()->render(&painter);
+ view.page()->render(&painter);
QCOMPARE(image, reference);
@@ -490,7 +488,7 @@ void tst_QWebView::renderingAfterMaxAndBack()
"<body width=1024 height=768 bgcolor=blue>"
"</body>"
"</html>");
- view.page()->mainFrame()->load(url2);
+ view.page()->load(url2);
QVERIFY(waitForSignal(&view, SIGNAL(loadFinished(bool))));
@@ -503,7 +501,7 @@ void tst_QWebView::renderingAfterMaxAndBack()
QPixmap image2(view.page()->viewportSize());
QPainter painter2(&image2);
- view.page()->currentFrame()->render(&painter2);
+ view.page()->render(&painter2);
QCOMPARE(image2, reference2);
@@ -513,10 +511,10 @@ void tst_QWebView::renderingAfterMaxAndBack()
reference3.fill(Qt::red);
QPixmap image3(view.page()->viewportSize());
QPainter painter3(&image3);
- view.page()->currentFrame()->render(&painter3);
+ view.page()->render(&painter3);
QCOMPARE(image3, reference3);
}
-QTEST_MAIN(tst_QWebView)
-#include "tst_qwebview.moc"
+QTEST_MAIN(tst_QWebEngineView)
+#include "tst_qwebengineview.moc"