diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-10-11 12:44:19 +0200 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-10-11 12:44:19 +0200 |
commit | ab1bd15209abaf7effc51dbc2f272c5681af7223 (patch) | |
tree | 680bfbc4ab13514a9d2288609377bd8461f1d9f6 /Source/WebKit/qt/tests/benchmarks | |
parent | 5909e6d0d10de3e1370b3ea0bc596f580101e3b4 (diff) | |
parent | 2eac3aeb98fca0e6c13aaaff481861c5ef679e68 (diff) | |
download | qtwebkit-dev.tar.gz |
Change-Id: I2b773e6958cf1d3699ff7887f2807572f1dafa8d
Diffstat (limited to 'Source/WebKit/qt/tests/benchmarks')
5 files changed, 0 insertions, 416 deletions
diff --git a/Source/WebKit/qt/tests/benchmarks/loading/tst_loading.cpp b/Source/WebKit/qt/tests/benchmarks/loading/tst_loading.cpp deleted file mode 100644 index 2ebf3775d..000000000 --- a/Source/WebKit/qt/tests/benchmarks/loading/tst_loading.cpp +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (C) 2009 Holger Hans Peter Freyther - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#ifndef QT_NO_BEARERMANAGEMENT -#include <QNetworkConfigurationManager> -#endif - -#include <QtTest/QtTest> - -#include <qwebframe.h> -#include <qwebview.h> -#include <qpainter.h> - -#include "util.h" - -class tst_Loading : public QObject -{ - Q_OBJECT - -public: - -public Q_SLOTS: - void init(); - void cleanup(); - -private Q_SLOTS: - void load_data(); - void load(); - -private: -#ifndef QT_NO_BEARERMANAGEMENT - QNetworkConfigurationManager m_manager; -#endif - QWebView* m_view; - QWebPage* m_page; -}; - -void tst_Loading::init() -{ - m_view = new QWebView; - m_page = m_view->page(); - - QSize viewportSize(1024, 768); - m_view->setFixedSize(viewportSize); - m_page->setViewportSize(viewportSize); -} - -void tst_Loading::cleanup() -{ - delete m_view; -} - -void tst_Loading::load_data() -{ - QTest::addColumn<QUrl>("url"); - QTest::newRow("amazon") << QUrl("http://www.amazon.com"); - QTest::newRow("kde") << QUrl("http://www.kde.org"); - QTest::newRow("apple") << QUrl("http://www.apple.com"); -} - -void tst_Loading::load() -{ - QFETCH(QUrl, url); - -#ifndef QT_NO_BEARERMANAGEMENT - if (!m_manager.isOnline()) - W_QSKIP("This test requires an active network connection", SkipSingle); -#endif - - QBENCHMARK { - m_view->load(url); - - // really wait for loading, painting is in another test - ::waitForSignal(m_view, SIGNAL(loadFinished(bool)), 0); - } -} - -QTEST_MAIN(tst_Loading) -#include "tst_loading.moc" diff --git a/Source/WebKit/qt/tests/benchmarks/painting/tst_painting.cpp b/Source/WebKit/qt/tests/benchmarks/painting/tst_painting.cpp deleted file mode 100644 index 8abba4bad..000000000 --- a/Source/WebKit/qt/tests/benchmarks/painting/tst_painting.cpp +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Copyright (C) 2009 Holger Hans Peter Freyther - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#ifndef QT_NO_BEARERMANAGEMENT -#include <QNetworkConfigurationManager> -#endif - -#include <QtTest/QtTest> - -#include <qwebelement.h> -#include <qwebframe.h> -#include <qwebview.h> -#include <qpainter.h> - -#include "util.h" - -class tst_Painting : public QObject -{ - Q_OBJECT - -public: - -public Q_SLOTS: - void init(); - void cleanup(); - -private Q_SLOTS: - void paint_data(); - void paint(); - void textAreas(); - -private: -#ifndef QT_NO_BEARERMANAGEMENT - QNetworkConfigurationManager m_manager; -#endif - QWebView* m_view; - QWebPage* m_page; -}; - -void tst_Painting::init() -{ - m_view = new QWebView; - m_page = m_view->page(); - - QSize viewportSize(1024, 768); - m_view->setFixedSize(viewportSize); - m_page->setViewportSize(viewportSize); -} - -void tst_Painting::cleanup() -{ - delete m_view; -} - -void tst_Painting::paint_data() -{ - QTest::addColumn<QUrl>("url"); - QTest::newRow("amazon") << QUrl("http://www.amazon.com"); -} - -void tst_Painting::paint() -{ - QFETCH(QUrl, url); - -#ifndef QT_NO_BEARERMANAGEMENT - if (!m_manager.isOnline()) - W_QSKIP("This test requires an active network connection", SkipSingle); -#endif - - m_view->load(url); - ::waitForSignal(m_view, SIGNAL(loadFinished(bool)), 0); - - /* force a layout */ - QWebFrame* mainFrame = m_page->mainFrame(); - mainFrame->toPlainText(); - - QPixmap pixmap(m_page->viewportSize()); - QBENCHMARK { - QPainter painter(&pixmap); - mainFrame->render(&painter, QRect(QPoint(0, 0), m_page->viewportSize())); - painter.end(); - } -} - -void tst_Painting::textAreas() -{ - m_view->load(QUrl("data:text/html;<html><body></body></html>")); - ::waitForSignal(m_view, SIGNAL(loadFinished(bool)), 0); - - QWebElement bodyElement = m_page->mainFrame()->findFirstElement("body"); - - int count = 100; - while (count--) { - QString markup("<textarea cols='1' rows='1'></textarea>"); - bodyElement.appendInside(markup); - } - - /* force a layout */ - QWebFrame* mainFrame = m_page->mainFrame(); - mainFrame->toPlainText(); - - QPixmap pixmap(mainFrame->contentsSize()); - QBENCHMARK { - QPainter painter(&pixmap); - mainFrame->render(&painter, QRect(QPoint(0, 0), mainFrame->contentsSize())); - painter.end(); - } -} - -QTEST_MAIN(tst_Painting) -#include "tst_painting.moc" diff --git a/Source/WebKit/qt/tests/benchmarks/webgl/10000_triangles.html b/Source/WebKit/qt/tests/benchmarks/webgl/10000_triangles.html deleted file mode 100644 index fd061aa27..000000000 --- a/Source/WebKit/qt/tests/benchmarks/webgl/10000_triangles.html +++ /dev/null @@ -1,59 +0,0 @@ -<html> - <body style="margin: 0"> - <canvas width="1000" height="1000"></canvas> - </body> -</html> -<script> - var canvas = document.getElementsByTagName("canvas")[0]; - gl = canvas.getContext("experimental-webgl"); - gl.clearColor(0.0, 1.0, 0.0, 1.0); - gl.viewport(0, 0, canvas.width, canvas.height); - - var vertexShader = gl.createShader(gl.VERTEX_SHADER); - gl.shaderSource(vertexShader, "attribute vec4 vPosition;\nvoid main() { gl_Position = vPosition; }"); - gl.compileShader(vertexShader); - - var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER); - gl.shaderSource(fragmentShader, "void main() { gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0); }"); - gl.compileShader(fragmentShader); - - var shaderProgram = gl.createProgram(); - gl.attachShader(shaderProgram, vertexShader); - gl.attachShader(shaderProgram, fragmentShader); - gl.bindAttribLocation(shaderProgram, 0, "vPosition"); - gl.linkProgram(shaderProgram); - - gl.useProgram(shaderProgram); - - var buffer = gl.createBuffer(); - gl.bindBuffer(gl.ARRAY_BUFFER, buffer); - - var vertices = []; - var seedX = -1.0; - var seedY = 1.0; - for (var i = 1; i <= 10000; ++i) { - vertices.push(seedX); - vertices.push(seedY); - vertices.push(0); - seedX += 0.01; - vertices.push(seedX); - vertices.push(seedY - 0.02); - vertices.push(0); - seedX += 0.01; - vertices.push(seedX); - vertices.push(seedY); - vertices.push(0); - if (!(i % 100)) { - seedX = -1.0; - seedY -= 0.02; - } - } - gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW); - - - gl.vertexAttribPointer(0, 3, gl.FLOAT, false, 0, 0); - gl.enableVertexAttribArray(0); - gl.clear(gl.COLOR_BUFFER_BIT); - gl.drawArrays(gl.TRIANGLES, 0, 30000); - gl.flush(); -</script> diff --git a/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.cpp b/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.cpp deleted file mode 100644 index 14ff1a80f..000000000 --- a/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.cpp +++ /dev/null @@ -1,130 +0,0 @@ -/* - Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - - -#include "../../util.h" -#include <QGLWidget> -#include <QGraphicsView> -#include <QGraphicsWebView> -#include <QScopedPointer> -#include <QWebFrame> -#include <QtTest/QtTest> - -class GraphicsView; - -class tst_WebGlPerformance : public QObject { - Q_OBJECT - -private Q_SLOTS: - void init(); - void cleanup(); - - void benchSoftwareFallbackRgb16(); - void benchSoftwareFallbackRgb32(); - void benchSoftwareFallbackArgb32(); - void benchSoftwareFallbackArgb32Premultiplied(); - -private: - void benchmarkFrameRenderingOnImage(QImage::Format); - - QScopedPointer<GraphicsView> m_view; -}; - -class GraphicsView : public QGraphicsView { -public: - GraphicsView(); - QGraphicsWebView* m_webView; - -protected: - void resizeEvent(QResizeEvent*); -}; - -GraphicsView::GraphicsView() -{ - QGraphicsScene* const scene = new QGraphicsScene(this); - setScene(scene); - - m_webView = new QGraphicsWebView; - scene->addItem(m_webView); - - m_webView->page()->settings()->setAttribute(QWebSettings::WebGLEnabled, true); - - resize(800, 600); - setFrameShape(QFrame::NoFrame); - setViewport(new QGLWidget); -} - -void GraphicsView::resizeEvent(QResizeEvent* event) -{ - QGraphicsView::resizeEvent(event); - QRectF rect(QPoint(0, 0), event->size()); - m_webView->setGeometry(rect); - scene()->setSceneRect(rect); -} - -void tst_WebGlPerformance::init() -{ - m_view.reset(new GraphicsView); - m_view->showMaximized(); - QTest::qWaitForWindowShown(m_view.data()); -} - -void tst_WebGlPerformance::cleanup() -{ - m_view.reset(); -} - -void tst_WebGlPerformance::benchSoftwareFallbackRgb16() -{ - benchmarkFrameRenderingOnImage(QImage::Format_RGB16); -} - -void tst_WebGlPerformance::benchSoftwareFallbackRgb32() -{ - benchmarkFrameRenderingOnImage(QImage::Format_RGB32); -} - -void tst_WebGlPerformance::benchSoftwareFallbackArgb32() -{ - benchmarkFrameRenderingOnImage(QImage::Format_ARGB32); -} - -void tst_WebGlPerformance::benchSoftwareFallbackArgb32Premultiplied() -{ - benchmarkFrameRenderingOnImage(QImage::Format_ARGB32_Premultiplied); -} - -void tst_WebGlPerformance::benchmarkFrameRenderingOnImage(QImage::Format format) -{ - m_view->m_webView->load(QUrl(QLatin1String("qrc:///testcases/10000_triangles.html"))); - const bool pageLoaded = waitForSignal(m_view->m_webView, SIGNAL(loadFinished(bool))); - Q_ASSERT(pageLoaded); - Q_UNUSED(pageLoaded); - - QImage target(m_view->size(), format); - QBENCHMARK { - QPainter painter(&target); - m_view->render(&painter); - painter.end(); - } -} - -QTEST_MAIN(tst_WebGlPerformance) - -#include "tst_webgl.moc" diff --git a/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.qrc b/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.qrc deleted file mode 100644 index b849448d7..000000000 --- a/Source/WebKit/qt/tests/benchmarks/webgl/tst_webgl.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<RCC> - <qresource prefix="/testcases"> - <file>10000_triangles.html</file> - </qresource> -</RCC> |