diff options
author | Kai Koehne <kai.koehne@qt.io> | 2018-09-27 16:18:31 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@qt.io> | 2018-10-09 07:50:30 +0000 |
commit | 9aa954e20e9fd02581d7334bda32deeb09752e66 (patch) | |
tree | 5e34ba6236b287b237d459cd7c5705ee83eb9458 /tests/manual | |
parent | c481ce0789ff923637dc483c6b904a54b0c44852 (diff) |
Merge qmlplugindump tests
Move all qmlplugindump test cases to the autotest one.
Change-Id: If7b5ea119c862507686c11f4dafaa4648d4808f5
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
Diffstat (limited to 'tests/manual')
28 files changed, 0 insertions, 1121 deletions
diff --git a/tests/manual/qmlplugindump/README b/tests/manual/qmlplugindump/README deleted file mode 100644 index 537afbba6e..0000000000 --- a/tests/manual/qmlplugindump/README +++ /dev/null @@ -1,42 +0,0 @@ -Tests for qmlplugindump ------------------------ - -The test are executed by compiling a series of sample projects and -running qmlplugindump on them, checking the generated plugin.qmltypes -files. Each test, except `builtins`, need a sample project in order -to be executed. A test is defined by: - - - test name - - sample project name - - sample project version - - expected results - -That means that different tests can use the same sample project, but -it is not possible to define a test that use more than one sample. -Test definitions are stored in the folder `definitions` as json files; -the file name is the test name, tests are executed in lexicographical -order on their names, and the contents defines the other properties in -the following format: - - { - "project": <project-name>, - "version": <version>, - "expected": [<regexp-patterns>*], - } - -where _project-name_, _version_, and _regexp-patterns_ are strings. - -The first two parameters are used to invoke qmlplugindump: - - qmlplugindump -nonrelocatable <uri> <version> <path> - -where: - - <uri> = tests.dumper.<project-name> - <path> = <test-root> - -therefore, it is important that the sample projects resides in -a subdirectory of `tests/dumper` named as the project itself. - -The last parameter is a list of regular expression patterns that -must match the `plugin.qmltypes` produced by qmlplugindump. diff --git a/tests/manual/qmlplugindump/definitions/000_dummy.json b/tests/manual/qmlplugindump/definitions/000_dummy.json deleted file mode 100644 index 15f62bbc13..0000000000 --- a/tests/manual/qmlplugindump/definitions/000_dummy.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "project": "Dummy", - "version": "1.0", - "expected": ["name: \"Dummy\""] -} diff --git a/tests/manual/qmlplugindump/definitions/001_versions.json b/tests/manual/qmlplugindump/definitions/001_versions.json deleted file mode 100644 index 185057f90d..0000000000 --- a/tests/manual/qmlplugindump/definitions/001_versions.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "project": "Versions", - "version": "1.0", - "expected": [ - "name: \"Versions\"", - "tests\\.dumper\\.Versions/Versions 1\\.0" - ] -} diff --git a/tests/manual/qmlplugindump/definitions/002_revisions.json b/tests/manual/qmlplugindump/definitions/002_revisions.json deleted file mode 100644 index 7f3d86ffe8..0000000000 --- a/tests/manual/qmlplugindump/definitions/002_revisions.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "project": "Versions", - "version": "1.1", - "expected": [ - "name: \"Versions\"", - "tests\\.dumper\\.Versions/Versions 1\\.1", - "exportMetaObjectRevisions: \\[0, 1\\]" - ] -} diff --git a/tests/manual/qmlplugindump/qmlplugindump.pro b/tests/manual/qmlplugindump/qmlplugindump.pro deleted file mode 100644 index 51a5e82781..0000000000 --- a/tests/manual/qmlplugindump/qmlplugindump.pro +++ /dev/null @@ -1,10 +0,0 @@ -CONFIG += testcase -TARGET = tst_qmlplugindump -QT += testlib gui-private -osx:CONFIG -= app_bundle -CONFIG += parallel_test - -DEFINES += QT_TEST_DIR=\\\"$${_PRO_FILE_PWD_}/\\\" - -SOURCES += tst_qmlplugindump.cpp -DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0 diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.cpp b/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.cpp deleted file mode 100644 index 0ca82f20e2..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "dummy.h" - -Dummy::Dummy(QQuickItem *parent): - QQuickItem(parent) -{ - // By default, QQuickItem does not draw anything. If you subclass - // QQuickItem to create a visual item, you will need to uncomment the - // following line and re-implement updatePaintNode() - - // setFlag(ItemHasContents, true); -} - -Dummy::~Dummy() -{ -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.h b/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.h deleted file mode 100644 index 8cf645da24..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.h +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 DUMMY_H -#define DUMMY_H - -#include <QQuickItem> - -class Dummy : public QQuickItem -{ - Q_OBJECT - -public: - Dummy(QQuickItem *parent = 0); - ~Dummy(); -}; - -#endif // DUMMY_H - diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.pro b/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.pro deleted file mode 100644 index 81975ee01c..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy.pro +++ /dev/null @@ -1,33 +0,0 @@ -TEMPLATE = lib -TARGET = Dummy -QT += qml quick -CONFIG += qt plugin - -TARGET = $$qtLibraryTarget($$TARGET) -uri = tests.dumper.Dummy - -# Input -SOURCES += \ - dummy_plugin.cpp \ - dummy.cpp - -HEADERS += \ - dummy_plugin.h \ - dummy.h - -DISTFILES = qmldir - -!equals(_PRO_FILE_PWD_, $$OUT_PWD) { - cpqmldir.files = qmldir - cpqmldir.path = $$OUT_PWD - COPIES += cpqmldir -} - -qmldir.files = qmldir -unix { - installPath = $$[QT_INSTALL_QML]/$$replace(uri, \\., /) - qmldir.path = $$installPath - target.path = $$installPath - INSTALLS += target qmldir -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.cpp b/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.cpp deleted file mode 100644 index 7bd869fc34..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "dummy_plugin.h" -#include "dummy.h" - -#include <qqml.h> - -void DummyPlugin::registerTypes(const char *uri) -{ - // @uri tests.dumper.dummy - qmlRegisterType<Dummy>(uri, 1, 0, "Dummy"); -} - - diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.h b/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.h deleted file mode 100644 index 86e80e6a08..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/dummy_plugin.h +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 DUMMY_PLUGIN_H -#define DUMMY_PLUGIN_H - -#include <QQmlExtensionPlugin> - -class DummyPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) - -public: - void registerTypes(const char *uri); -}; - -#endif // DUMMY_PLUGIN_H - diff --git a/tests/manual/qmlplugindump/tests/dumper/Dummy/qmldir b/tests/manual/qmlplugindump/tests/dumper/Dummy/qmldir deleted file mode 100644 index a1b2e789ba..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Dummy/qmldir +++ /dev/null @@ -1,3 +0,0 @@ -module tests.dumper.Dummy -plugin Dummy - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/CompositeImports.qml b/tests/manual/qmlplugindump/tests/dumper/Imports/CompositeImports.qml deleted file mode 100644 index b1055b6992..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/CompositeImports.qml +++ /dev/null @@ -1,5 +0,0 @@ -import QtQuick 2.0 - -QtObject { - property int test: 0 -} diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.cpp b/tests/manual/qmlplugindump/tests/dumper/Imports/imports.cpp deleted file mode 100644 index d2296ce6ba..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "imports.h" - -Imports::Imports(QQuickItem *parent): - QQuickItem(parent) -{ - // By default, QQuickItem does not draw anything. If you subclass - // QQuickItem to create a visual item, you will need to uncomment the - // following line and re-implement updatePaintNode() - - // setFlag(ItemHasContents, true); -} - -Imports::~Imports() -{ -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.h b/tests/manual/qmlplugindump/tests/dumper/Imports/imports.h deleted file mode 100644 index 3854a042d2..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.h +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 IMPORTS_H -#define IMPORTS_H - -#include <QQuickItem> - -class Imports : public QQuickItem -{ - Q_OBJECT - -public: - Imports(QQuickItem *parent = 0); - ~Imports(); -}; - -#endif // IMPORTS_H - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.pro b/tests/manual/qmlplugindump/tests/dumper/Imports/imports.pro deleted file mode 100644 index 1033c7a28f..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/imports.pro +++ /dev/null @@ -1,33 +0,0 @@ -TEMPLATE = lib -TARGET = Imports -QT += qml quick -CONFIG += qt plugin - -TARGET = $$qtLibraryTarget($$TARGET) -uri = tests.dumper.Imports - -# Input -SOURCES += \ - imports_plugin.cpp \ - imports.cpp - -HEADERS += \ - imports_plugin.h \ - imports.h - -DISTFILES = qmldir - -!equals(_PRO_FILE_PWD_, $$OUT_PWD) { - cpqmldir.files = qmldir - cpqmldir.path = $$OUT_PWD - COPIES += cpqmldir -} - -qmldir.files = qmldir -unix { - installPath = $$[QT_INSTALL_QML]/$$replace(uri, \\., /) - qmldir.path = $$installPath - target.path = $$installPath - INSTALLS += target qmldir -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.cpp b/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.cpp deleted file mode 100644 index ec6e56ca33..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "imports_plugin.h" -#include "imports.h" - -#include <qqml.h> - -void ImportsPlugin::registerTypes(const char *uri) -{ - // @uri tests.dumper.imports - qmlRegisterType<Imports>(uri, 1, 0, "Imports"); -} - - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.h b/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.h deleted file mode 100644 index fd09584d47..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/imports_plugin.h +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 IMPORTS_PLUGIN_H -#define IMPORTS_PLUGIN_H - -#include <QQmlExtensionPlugin> - -class ImportsPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) - -public: - void registerTypes(const char *uri); -}; - -#endif // IMPORTS_PLUGIN_H - diff --git a/tests/manual/qmlplugindump/tests/dumper/Imports/qmldir b/tests/manual/qmlplugindump/tests/dumper/Imports/qmldir deleted file mode 100644 index efab493dc8..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Imports/qmldir +++ /dev/null @@ -1,3 +0,0 @@ -module tests.dumper.Imports -plugin Imports -CompositeImports 1.0 CompositeImports.qml diff --git a/tests/manual/qmlplugindump/tests/dumper/Singleton/CompositeSingleton.qml b/tests/manual/qmlplugindump/tests/dumper/Singleton/CompositeSingleton.qml deleted file mode 100644 index b47d2e98f4..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Singleton/CompositeSingleton.qml +++ /dev/null @@ -1,6 +0,0 @@ -pragma Singleton -import QtQuick 2.0 - -QtObject { - property int test: 0 -} diff --git a/tests/manual/qmlplugindump/tests/dumper/Singleton/qmldir b/tests/manual/qmlplugindump/tests/dumper/Singleton/qmldir deleted file mode 100644 index dec4063fda..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Singleton/qmldir +++ /dev/null @@ -1,2 +0,0 @@ -module tests.dumper.Singleton -singleton CompositeSingleton 1.0 CompositeSingleton.qml diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/plugin.qmltypes b/tests/manual/qmlplugindump/tests/dumper/Versions/plugin.qmltypes deleted file mode 100644 index 0e09c2cfc7..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/plugin.qmltypes +++ /dev/null @@ -1,21 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump tests.dumper.versions 1.1 .' - -Module { - dependencies: ["QtQuick 2.0"] - Component { - name: "Versions" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["Versions 1.0", "Versions 1.1"] - exportMetaObjectRevisions: [0, 1] - Property { name: "foo"; type: "int" } - Property { name: "bar"; revision: 1; type: "int" } - Property { name: "baz"; revision: 2; type: "int" } - } -} diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/qmldir b/tests/manual/qmlplugindump/tests/dumper/Versions/qmldir deleted file mode 100644 index 382225f517..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/qmldir +++ /dev/null @@ -1,3 +0,0 @@ -module tests.dumper.Versions -plugin Versions - diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.cpp b/tests/manual/qmlplugindump/tests/dumper/Versions/versions.cpp deleted file mode 100644 index e5f435ca7f..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "versions.h" - -Versions::Versions(QQuickItem *parent): - QQuickItem(parent) -{ - // By default, QQuickItem does not draw anything. If you subclass - // QQuickItem to create a visual item, you will need to uncomment the - // following line and re-implement updatePaintNode() - - // setFlag(ItemHasContents, true); -} - -Versions::~Versions() -{ -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.h b/tests/manual/qmlplugindump/tests/dumper/Versions/versions.h deleted file mode 100644 index 56403d90a7..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.h +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 VERSIONS_H -#define VERSIONS_H - -#include <QQuickItem> - -class Versions : public QQuickItem -{ - Q_OBJECT - Q_PROPERTY(int foo READ foo WRITE setFoo NOTIFY fooChanged) - Q_PROPERTY(int bar READ bar WRITE setBar NOTIFY barChanged REVISION 1) - Q_PROPERTY(int baz READ baz WRITE setBaz NOTIFY bazChanged REVISION 2) - -public: - Versions(QQuickItem *parent = 0); - ~Versions(); - int foo() const { return m_foo; } - void setFoo(int value) { m_foo = value; } - int bar() const { return m_bar; } - void setBar(int value) { m_bar = value; } - int baz() const { return m_baz; } - void setBaz(int value) { m_baz = value; } -signals: - void fooChanged(); - void barChanged(); - void bazChanged(); -private: - int m_foo; - int m_bar; - int m_baz; -}; - -#endif // VERSIONS_H - diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.pro b/tests/manual/qmlplugindump/tests/dumper/Versions/versions.pro deleted file mode 100644 index d59470862d..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/versions.pro +++ /dev/null @@ -1,33 +0,0 @@ -TEMPLATE = lib -TARGET = Versions -QT += qml quick -CONFIG += qt plugin - -TARGET = $$qtLibraryTarget($$TARGET) -uri = tests.dumper.Versions - -# Input -SOURCES += \ - versions_plugin.cpp \ - versions.cpp - -HEADERS += \ - versions_plugin.h \ - versions.h - -DISTFILES = qmldir - -!equals(_PRO_FILE_PWD_, $$OUT_PWD) { - cpqmldir.files = qmldir - cpqmldir.path = $$OUT_PWD - COPIES += cpqmldir -} - -qmldir.files = qmldir -unix { - installPath = $$[QT_INSTALL_QML]/$$replace(uri, \\., /) - qmldir.path = $$installPath - target.path = $$installPath - INSTALLS += target qmldir -} - diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.cpp b/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.cpp deleted file mode 100644 index 59741f96a3..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.cpp +++ /dev/null @@ -1,41 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 "versions_plugin.h" -#include "versions.h" - -#include <qqml.h> - -void VersionsPlugin::registerTypes(const char *uri) -{ - // @uri tests.dumper.versions - qmlRegisterType<Versions>(uri, 1, 0, "Versions"); - qmlRegisterType<Versions, 1>(uri, 1, 1, "Versions"); -} - - diff --git a/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.h b/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.h deleted file mode 100644 index 4ba68a8125..0000000000 --- a/tests/manual/qmlplugindump/tests/dumper/Versions/versions_plugin.h +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 VERSIONS_PLUGIN_H -#define VERSIONS_PLUGIN_H - -#include <QQmlExtensionPlugin> - -class VersionsPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) - -public: - void registerTypes(const char *uri); -}; - -#endif // VERSIONS_PLUGIN_H - diff --git a/tests/manual/qmlplugindump/tst_qmlplugindump.cpp b/tests/manual/qmlplugindump/tst_qmlplugindump.cpp deleted file mode 100644 index c5047a63a7..0000000000 --- a/tests/manual/qmlplugindump/tst_qmlplugindump.cpp +++ /dev/null @@ -1,371 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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 <qtest.h> -#include <QLibraryInfo> -#include <QDir> -#include <QDirIterator> -#include <QProcess> -#include <QRegularExpression> -#include <QJsonDocument> -#include <QJsonParseError> -#include <QJsonObject> -#include <QJsonArray> -#include <QJsonValue> - -#include <QDebug> - -#include <cstdlib> -#include <algorithm> - - -// System dependent definitions - -#if defined(Q_OS_WIN) - -static const char* systemMakeProgram = "jom"; -static const char* systemQmlplugindumpProgram = "qmlplugindump.exe"; - -static const QString libname(const QString &name) -{ - return name + QLatin1String(".dll"); -} - -#elif defined(Q_OS_DARWIN) - -static const char* systemMakeProgram = "make"; -static const char* systemQmlplugindumpProgram = "qmlplugindump"; - -static const QString libname(const QString &name) -{ - return QLatin1String("lib") + name + QLatin1String(".dynlib"); -} - -#else - -static const char* systemMakeProgram = "make"; -static const char* systemQmlplugindumpProgram = "qmlplugindump"; - -static const QString libname(const QString &name) -{ - return QLatin1String("lib") + name + QLatin1String(".so"); -} - -#endif - - -// Utilities - - -// Functor for matching a list of regular expression on a buffer. -// -class RegexpsChecker -{ -public: - RegexpsChecker(const QStringList &expected) : m_expected(expected) {} - bool operator()(const QByteArray &buffer) const - { - QRegularExpression re; - QRegularExpressionMatch m; - for (const QString &e : m_expected) { - re.setPattern(e); - m = re.match(QString::fromLatin1(buffer)); - if (!m.hasMatch()) { - qWarning() << "Pattern not found: " << e; - return false; - } - } - return true; - } -private: - const QStringList m_expected; -}; - - -// Run an external process in given path and with given arguments, if presents. -// Optionally run a regexp check on the process standard output. -// -bool run(const QString &path, const QString &cmd, const QStringList &args=QStringList(), - const RegexpsChecker *checker=0) { - QProcess process; - process.setWorkingDirectory(path); - process.start(cmd, args); - process.waitForFinished(); - if (process.error() == QProcess::FailedToStart) { - qWarning() << cmd << args << "failed to start."; - return false; - } - if (process.error() == QProcess::Crashed) { - qWarning() << cmd << args << "crashed."; - return false; - } - if (process.exitStatus() != QProcess::NormalExit) { - qWarning() << cmd << args << "exited with code: " << process.exitCode(); - return false; - } - if (checker) - (*checker)(process.readAllStandardOutput()); - return true; -} - - -// Test Definition -// -// A test is defined by id, project, version and expected patterns that should -// match the output of qmlplugindump. -// -class Test -{ -public: - Test(const QString &testId) : id(testId) {} - Test(const QString &testId, const QString &prjName, const QString &prjVersion, - const QStringList &expectedResult) : - id(testId), project(prjName), version(prjVersion), expected(expectedResult) {} - QString id; - QString project; - QString version; - QStringList expected; - bool isNull() const - { - return project.isEmpty() || version.isEmpty(); - } - friend bool operator<(const Test &t1, const Test &t2) { return t1.id < t2.id; } -}; - - -// Create test from a json document. -// -// The json document must contains these fields: -// -// project: string -// version: string -// expected: [string*] -// -// qmlplugindumper will be invoked with these arguments: -// -// qmlplugindumper tests.dumper.<PROJECT> <VERSION> -// -// PROJECT is the name of the sample project. It is used as a project name -// and as the last components of the URI: tests.dumper.<PROJECT>; the project -// path must be ./test/dumper/<PROJECT>. -// -// EXPECTED is a list of regular expression patterns that must match the -// plugin.qmltypes produced by qmlplugindump. -// -Test createTest(const QString &id, const QJsonObject &def) -{ - QJsonValue project = def.value(QLatin1String("project")); - QJsonValue version = def.value(QLatin1String("version")); - QJsonValue expected = def.value(QLatin1String("expected")); - if (!project.isString() || !version.isString() || !expected.isArray()){ - qWarning() << "Wrong definition for test: " << id << "."; - return Test(id); - } - QStringList patterns; - const auto expectedArray = expected.toArray(); - for (const QJsonValue &x : expectedArray) { - if (!x.isString()) { - qWarning() << "Wrong definition for test: " << id << "."; - return Test(id); - } else { - patterns << x.toString(); - } - } - return Test(id, project.toString(), version.toString(), patterns); -} - -// Read a test definition from a file. -// -// The file must define a json document that `createTest' can understand. -// -Test readTestDefinition(const QFileInfo &file) -{ - const QString path = file.filePath(); - const QString id = file.baseName(); - QFile fd(path); - if (fd.open(QIODevice::ReadOnly)) { - QTextStream in(&fd); - QJsonParseError err; - QJsonDocument doc = QJsonDocument::fromJson(in.readAll().toLatin1(), &err); - fd.close(); - if (err.error != QJsonParseError::NoError) { - qWarning() << "Parse error in test \"" << id << "\":" << err.errorString(); - return Test(id); - } - QJsonObject obj = doc.object(); - return createTest(id, obj); - } - qWarning() << "Cannot open " << path << "."; - return Test(id); -} - -// Read all files in `path' as test definitions. -// -// Returns a list of tests sorted lexicographically. -// -QList<Test> readAllTestDefinitions(const QString &path) -{ - QList<Test> samples; - QDirIterator it(path, QDir::Files); - while (it.hasNext()) { - it.next(); - samples << readTestDefinition(it.fileInfo()); - } - std::sort(samples.begin(), samples.end()); - return samples; -} - - -// TEST SUITE - -class tst_qmlplugindump : public QObject -{ - Q_OBJECT -public: - tst_qmlplugindump(); - -private slots: - void initTestCase(); - void builtins(); - void plugin_data(); - void plugin(); - void cleanupTestCase(); - -private: - static const char *prefix; - QString dumper; - QList<Test> tests; - QString samplePath(const QString &name); - bool compileSample(const QString &name); - bool cleanUpSample(const QString &name); -}; - -const char *tst_qmlplugindump::prefix = "tests.dumper."; - -tst_qmlplugindump::tst_qmlplugindump() -{ -} - -QString tst_qmlplugindump::samplePath(const QString &name) -{ - return QT_TEST_DIR - + QLatin1Char('/') - + QString(QLatin1String(prefix)).replace(QRegularExpression(QLatin1String("\\.")), - QLatin1String("/")).append(name); -} - -bool tst_qmlplugindump::compileSample(const QString &name) -{ - const QString path = samplePath(name); - return run(path, QLibraryInfo::location(QLibraryInfo::BinariesPath) + QLatin1String("/qmake")) - && run(path, QLatin1String(systemMakeProgram)); -} - -bool tst_qmlplugindump::cleanUpSample(const QString &name) -{ - const QString path = samplePath(name); - const QStringList args(QLatin1String("clean")); - if (!run(path, QLatin1String(systemMakeProgram), args)) - return false; - - const QString libfile = path + QLatin1Char('/') + libname(name); - - if (!QFile::remove(libfile)) { - qWarning() << "Cannot remove" << libfile << "."; - return false; - } - return true; -} - -void tst_qmlplugindump::initTestCase() -{ - dumper = QLibraryInfo::location(QLibraryInfo::BinariesPath); - tests = readAllTestDefinitions(QT_TEST_DIR "/definitions"); - - dumper += QLatin1Char('/') + QLatin1String(systemQmlplugindumpProgram); - - if (!QFileInfo(dumper).exists()) { - QString message = QString::fromLatin1("qmlplugindump executable not found (looked for %0)") - .arg(dumper); - QFAIL(qPrintable(message)); - } -} - -void tst_qmlplugindump::builtins() -{ - QStringList args; - args += QLatin1String("-builtins"); - RegexpsChecker check(QStringList(QLatin1String("Module {"))); - QString cwd = QT_TEST_DIR; - QVERIFY(run(cwd, dumper, args, &check)); -} - -void tst_qmlplugindump::plugin_data() -{ - QTest::addColumn<QString>("project"); - QTest::addColumn<QString>("version"); - QTest::addColumn<QStringList>("expected"); - - for (const Test &t : qAsConst(tests)) { - if (t.isNull()) - QSKIP("Errors in test definition."); - QTest::newRow(t.id.toLatin1().data()) << t.project << t.version << t.expected; - } -} - -void tst_qmlplugindump::plugin() -{ - QFETCH(QString, project); - QFETCH(QString, version); - QFETCH(QStringList, expected); - - QVERIFY(compileSample(project)); - - QStringList args; - QString url = QLatin1String("tests.dumper.") + project; - QString cwd = QT_TEST_DIR; - args << QLatin1String("-nonrelocatable") << url << version << cwd; - RegexpsChecker check(expected); - QVERIFY(run(cwd, dumper, args, &check)); -} - -void tst_qmlplugindump::cleanupTestCase() -{ - QSet<const QString> projects; - for (const Test &t : qAsConst(tests)) - projects.insert(t.project); - for (const QString &p : qAsConst(projects)) { - if (!cleanUpSample(p)) - qWarning() << "Error in cleaning up project" << p << "."; - } -} - - -QTEST_MAIN(tst_qmlplugindump) - -#include "tst_qmlplugindump.moc" |