aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorAlexandr Akulich <akulichalexander@gmail.com>2017-10-10 20:02:36 +0300
committerShawn Rutledge <shawn.rutledge@qt.io>2017-10-20 12:33:00 +0000
commite3e890dbb3106c8360d6c4a75b7905b7b1a75f09 (patch)
tree3fa7aa52c9b78c4427f32efb0de9f296ba24aa23 /tests
parentef0953f21e79a7153f56a13aec9e7ed2865fef5c (diff)
Extract QSizeChangeListener from tst_quickview to shared test utils
The class is useful for other tests Change-Id: Iea287ee7659a7504800763c45ae5dc744360eaa0 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/quick/qquickview/qquickview.pro1
-rw-r--r--tests/auto/quick/qquickview/tst_qquickview.cpp26
-rw-r--r--tests/auto/quick/shared/geometrytestutil.cpp43
-rw-r--r--tests/auto/quick/shared/geometrytestutil.h49
-rw-r--r--tests/auto/quick/shared/util.pri2
5 files changed, 97 insertions, 24 deletions
diff --git a/tests/auto/quick/qquickview/qquickview.pro b/tests/auto/quick/qquickview/qquickview.pro
index 1302908bf7..12b24a4e27 100644
--- a/tests/auto/quick/qquickview/qquickview.pro
+++ b/tests/auto/quick/qquickview/qquickview.pro
@@ -5,6 +5,7 @@ macx:CONFIG -= app_bundle
SOURCES += tst_qquickview.cpp
include (../../shared/util.pri)
+include (../shared/util.pri)
TESTDATA = data/*
diff --git a/tests/auto/quick/qquickview/tst_qquickview.cpp b/tests/auto/quick/qquickview/tst_qquickview.cpp
index 04d21457e6..5849d35353 100644
--- a/tests/auto/quick/qquickview/tst_qquickview.cpp
+++ b/tests/auto/quick/qquickview/tst_qquickview.cpp
@@ -36,29 +36,7 @@
#include <QtCore/QDebug>
#include <QtQml/qqmlengine.h>
-class SizeChangesListener : public QObject, public QVector<QSize>
-{
- Q_OBJECT
-public:
- explicit SizeChangesListener(QQuickItem *item);
-private slots:
- void onSizeChanged();
-private:
- QQuickItem *item;
-
-};
-
-SizeChangesListener::SizeChangesListener(QQuickItem *item) :
- item(item)
-{
- connect(item, &QQuickItem::widthChanged, this, &SizeChangesListener::onSizeChanged);
- connect(item, &QQuickItem::heightChanged, this, &SizeChangesListener::onSizeChanged);
-}
-
-void SizeChangesListener::onSizeChanged()
-{
- append(QSize(item->width(), item->height()));
-}
+#include "../shared/geometrytestutil.h"
class tst_QQuickView : public QQmlDataTest
{
@@ -164,7 +142,7 @@ void tst_QQuickView::resizemodeitem()
// size update from view
QCoreApplication::processEvents(); // make sure the last resize events are gone
- SizeChangesListener sizeListener(item);
+ QSizeChangeListener sizeListener(item);
view->resize(QSize(200,300));
QTRY_COMPARE(item->width(), 200.0);
diff --git a/tests/auto/quick/shared/geometrytestutil.cpp b/tests/auto/quick/shared/geometrytestutil.cpp
new file mode 100644
index 0000000000..07a755e9a5
--- /dev/null
+++ b/tests/auto/quick/shared/geometrytestutil.cpp
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite 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$
+**
+****************************************************************************/
+
+#include "geometrytestutil.h"
+
+#include <QQuickItem>
+
+QSizeChangeListener::QSizeChangeListener(QQuickItem *item) :
+ item(item)
+{
+ connect(item, &QQuickItem::widthChanged, this, &QSizeChangeListener::onSizeChanged);
+ connect(item, &QQuickItem::heightChanged, this, &QSizeChangeListener::onSizeChanged);
+}
+
+void QSizeChangeListener::onSizeChanged()
+{
+ append(QSize(item->width(), item->height()));
+}
diff --git a/tests/auto/quick/shared/geometrytestutil.h b/tests/auto/quick/shared/geometrytestutil.h
new file mode 100644
index 0000000000..2cf19ed7ff
--- /dev/null
+++ b/tests/auto/quick/shared/geometrytestutil.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite 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$
+**
+****************************************************************************/
+
+#ifndef QQUICKGEOMETRYTESTUTIL_H
+#define QQUICKGEOMETRYTESTUTIL_H
+
+#include <QObject>
+#include <QVector>
+#include <QSize>
+
+QT_FORWARD_DECLARE_CLASS(QQuickItem)
+
+class QSizeChangeListener : public QObject, public QVector<QSize>
+{
+ Q_OBJECT
+public:
+ explicit QSizeChangeListener(QQuickItem *item);
+private slots:
+ void onSizeChanged();
+private:
+ QQuickItem *item;
+};
+
+#endif // QQUICKGEOMETRYTESTUTIL_H
diff --git a/tests/auto/quick/shared/util.pri b/tests/auto/quick/shared/util.pri
index bd2d202f1d..359c312328 100644
--- a/tests/auto/quick/shared/util.pri
+++ b/tests/auto/quick/shared/util.pri
@@ -2,8 +2,10 @@
QT += core-private gui-private qml-private quick-private
HEADERS += $$PWD/visualtestutil.h \
+ $$PWD/geometrytestutil.h \
$$PWD/viewtestutil.h
SOURCES += $$PWD/visualtestutil.cpp \
+ $$PWD/geometrytestutil.cpp \
$$PWD/viewtestutil.cpp
DEFINES += QT_QMLTEST_DATADIR=\\\"$${_PRO_FILE_PWD_}/data\\\"