summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPeter Varga <pvarga@inf.u-szeged.hu>2016-02-27 22:59:51 +0100
committerPeter Varga <pvarga@inf.u-szeged.hu>2016-03-11 06:21:36 +0000
commitf658dcb0893e7869cc0c029bfe0be82838af4bb8 (patch)
treecbb120c511ffb5ac2591cbd6d463e5e73083a847 /tests
parenta35cf1f491b69e3aba4f9cd95dd37eff8c0a34b1 (diff)
Clean up FaviconManager and fix icon url in NavigationEntry
Change-Id: I56a109c9071ef581c6a51b5b7b8ce5a2464c6a76 Task-number: QTBUG-51179 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/quick/qmltests/data/tst_favicon.qml70
-rw-r--r--tests/auto/quick/qmltests/data/tst_faviconImage.qml125
-rw-r--r--tests/auto/quick/qmltests/qmltests.pro1
-rw-r--r--tests/auto/widgets/qwebenginefaviconmanager/tst_qwebenginefaviconmanager.cpp8
4 files changed, 70 insertions, 134 deletions
diff --git a/tests/auto/quick/qmltests/data/tst_favicon.qml b/tests/auto/quick/qmltests/data/tst_favicon.qml
index 022ed3af3..95059fad1 100644
--- a/tests/auto/quick/qmltests/data/tst_favicon.qml
+++ b/tests/auto/quick/qmltests/data/tst_favicon.qml
@@ -56,6 +56,11 @@ TestWebEngineView {
signalName: "iconChanged"
}
+ Image {
+ id: favicon
+ source: webEngineView.icon
+ }
+
TestCase {
id: test
name: "WebEngineFavicon"
@@ -72,6 +77,34 @@ TestWebEngineView {
iconChangedSpy.clear()
}
+ function test_faviconLoad() {
+ compare(iconChangedSpy.count, 0)
+
+ var url = Qt.resolvedUrl("favicon.html")
+ webEngineView.url = url
+ verify(webEngineView.waitForLoadSucceeded())
+
+ iconChangedSpy.wait()
+ compare(iconChangedSpy.count, 1)
+
+ compare(favicon.width, 48)
+ compare(favicon.height, 48)
+ }
+
+ function test_faviconLoadEncodedUrl() {
+ compare(iconChangedSpy.count, 0)
+
+ var url = Qt.resolvedUrl("favicon2.html?favicon=load should work with#whitespace!")
+ webEngineView.url = url
+ verify(webEngineView.waitForLoadSucceeded())
+
+ iconChangedSpy.wait()
+ compare(iconChangedSpy.count, 1)
+
+ compare(favicon.width, 16)
+ compare(favicon.height, 16)
+ }
+
function test_noFavicon() {
compare(iconChangedSpy.count, 0)
@@ -105,11 +138,10 @@ TestWebEngineView {
webEngineView.url = url
verify(webEngineView.waitForLoadSucceeded())
- iconChangedSpy.wait()
- compare(iconChangedSpy.count, 1)
+ compare(iconChangedSpy.count, 0)
var iconUrl = webEngineView.icon
- compare(iconUrl, Qt.resolvedUrl("icons/unavailable.ico"))
+ compare(iconUrl, Qt.resolvedUrl(""))
}
function test_errorPageEnabled() {
@@ -142,6 +174,38 @@ TestWebEngineView {
compare(iconUrl, Qt.resolvedUrl(""))
}
+ function test_bestFavicon() {
+ compare(iconChangedSpy.count, 0)
+ var url, iconUrl
+
+ url = Qt.resolvedUrl("favicon-misc.html")
+ webEngineView.url = url
+ verify(webEngineView.waitForLoadSucceeded())
+
+ iconChangedSpy.wait()
+ compare(iconChangedSpy.count, 1)
+
+ iconUrl = webEngineView.icon
+ // Touch icon is ignored
+ compare(iconUrl, Qt.resolvedUrl("icons/qt32.ico"))
+ compare(favicon.width, 32)
+ compare(favicon.height, 32)
+
+ iconChangedSpy.clear()
+
+ url = Qt.resolvedUrl("favicon-shortcut.html")
+ webEngineView.url = url
+ verify(webEngineView.waitForLoadSucceeded())
+
+ iconChangedSpy.wait()
+ verify(iconChangedSpy.count >= 1)
+
+ iconUrl = webEngineView.icon
+ compare(iconUrl, Qt.resolvedUrl("icons/qt144.png"))
+ compare(favicon.width, 144)
+ compare(favicon.height, 144)
+ }
+
function test_touchIcon() {
compare(iconChangedSpy.count, 0)
diff --git a/tests/auto/quick/qmltests/data/tst_faviconImage.qml b/tests/auto/quick/qmltests/data/tst_faviconImage.qml
deleted file mode 100644
index 866467714..000000000
--- a/tests/auto/quick/qmltests/data/tst_faviconImage.qml
+++ /dev/null
@@ -1,125 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the QtWebEngine module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:GPL-EXCEPT$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-import QtQuick 2.0
-import QtTest 1.0
-import QtWebEngine 1.3
-
-TestWebEngineView {
- id: webEngineView
- width: 200
- height: 400
-
- SignalSpy {
- id: iconChangedSpy
- target: webEngineView
- signalName: "iconChanged"
- }
-
- Image {
- id: faviconImage
- source: webEngineView.icon
- }
-
- TestCase {
- id: test
- name: "WebEngineFaviconImage"
- when: windowShown
-
- function init() {
- if (webEngineView.icon != '') {
- // If this is not the first test, then load a blank page without favicon, restoring the initial state.
- webEngineView.url = 'about:blank'
- verify(webEngineView.waitForLoadSucceeded())
- iconChangedSpy.wait()
- }
-
- iconChangedSpy.clear()
- }
-
- function test_faviconImageLoad() {
- compare(iconChangedSpy.count, 0)
-
- var url = Qt.resolvedUrl("favicon.html")
- webEngineView.url = url
- verify(webEngineView.waitForLoadSucceeded())
-
- iconChangedSpy.wait()
- compare(iconChangedSpy.count, 1)
-
- compare(faviconImage.width, 48)
- compare(faviconImage.height, 48)
- }
-
- function test_faviconImageLoadEncodedUrl() {
- compare(iconChangedSpy.count, 0)
-
- var url = Qt.resolvedUrl("favicon2.html?favicon=load should work with#whitespace!")
- webEngineView.url = url
- verify(webEngineView.waitForLoadSucceeded())
-
- iconChangedSpy.wait()
- compare(iconChangedSpy.count, 1)
-
- compare(faviconImage.width, 16)
- compare(faviconImage.height, 16)
- }
-
- function test_bestFaviconImage() {
- compare(iconChangedSpy.count, 0)
- var url, iconUrl
-
- url = Qt.resolvedUrl("favicon-misc.html")
- webEngineView.url = url
- verify(webEngineView.waitForLoadSucceeded())
-
- iconChangedSpy.wait()
- compare(iconChangedSpy.count, 1)
-
- iconUrl = webEngineView.icon
- // Touch icon is ignored
- compare(iconUrl, Qt.resolvedUrl("icons/qt32.ico"))
- compare(faviconImage.width, 32)
- compare(faviconImage.height, 32)
-
- iconChangedSpy.clear()
-
- url = Qt.resolvedUrl("favicon-shortcut.html")
- webEngineView.url = url
- verify(webEngineView.waitForLoadSucceeded())
-
- iconChangedSpy.wait()
- verify(iconChangedSpy.count >= 1)
-
- iconUrl = webEngineView.icon
- compare(iconUrl, Qt.resolvedUrl("icons/qt144.png"))
- compare(faviconImage.width, 144)
- compare(faviconImage.height, 144)
- }
- }
-}
diff --git a/tests/auto/quick/qmltests/qmltests.pro b/tests/auto/quick/qmltests/qmltests.pro
index d1849d020..d3307a339 100644
--- a/tests/auto/quick/qmltests/qmltests.pro
+++ b/tests/auto/quick/qmltests/qmltests.pro
@@ -39,7 +39,6 @@ OTHER_FILES += \
$$PWD/data/tst_desktopBehaviorLoadHtml.qml \
$$PWD/data/tst_download.qml \
$$PWD/data/tst_favicon.qml \
- $$PWD/data/tst_faviconImage.qml \
$$PWD/data/tst_filePicker.qml \
$$PWD/data/tst_formValidation.qml \
$$PWD/data/tst_geopermission.qml \
diff --git a/tests/auto/widgets/qwebenginefaviconmanager/tst_qwebenginefaviconmanager.cpp b/tests/auto/widgets/qwebenginefaviconmanager/tst_qwebenginefaviconmanager.cpp
index 0b7a955b3..89a33134f 100644
--- a/tests/auto/widgets/qwebenginefaviconmanager/tst_qwebenginefaviconmanager.cpp
+++ b/tests/auto/widgets/qwebenginefaviconmanager/tst_qwebenginefaviconmanager.cpp
@@ -161,7 +161,7 @@ void tst_QWebEngineFaviconManager::aboutBlank()
m_page->load(url);
QTRY_COMPARE(loadFinishedSpy.count(), 1);
- QTRY_COMPARE(iconUrlChangedSpy.count(), 0);
+ QCOMPARE(iconUrlChangedSpy.count(), 0);
QVERIFY(m_page->iconUrl().isEmpty());
}
@@ -178,11 +178,9 @@ void tst_QWebEngineFaviconManager::unavailableFavicon()
m_page->load(url);
QTRY_COMPARE(loadFinishedSpy.count(), 1);
- QTRY_COMPARE(iconUrlChangedSpy.count(), 1);
+ QCOMPARE(iconUrlChangedSpy.count(), 0);
- QUrl iconUrl = iconUrlChangedSpy.at(0).at(0).toString();
- QCOMPARE(m_page->iconUrl(), iconUrl);
- QCOMPARE(iconUrl, QUrl::fromLocalFile(TESTS_SOURCE_DIR + QLatin1String("qwebenginefaviconmanager/resources/icons/unavailable.ico")));
+ QVERIFY(m_page->iconUrl().isEmpty());
}
void tst_QWebEngineFaviconManager::errorPageEnabled()