/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtAddOn.JsonDb module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** 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 Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QMLTESTUTIL_H #define QMLTESTUTIL_H #include #include #include #include #include #include #include inline QVariant createObject(const QString &functionName) { static QStringList greekAlphabets; static int size = 0; if (greekAlphabets.isEmpty()) { greekAlphabets << "alpha" << "beta" << "gamma" << "epsilon" << "zeta" << "eta" << "theta"<< "iota" << "kappa" << "lambda"; size = greekAlphabets.size(); } QVariantMap obj; obj.insert("_type", functionName); int position = qrand()%size; obj.insert("alphabet", greekAlphabets[position]); obj.insert("pos", position); return obj; } inline QVariant createObjectList(const QString &functionName, int size) { QVariantList list; for (int i = 0; iimportPathList(); for (int i=0; (i errors; if (engine->importPlugin(list.at(i).absoluteFilePath(), pluginName, &errors)) { pluginPath = list.at(i).absoluteFilePath(); break; } } } delete engine; return pluginPath; } class ComponentData { public: ComponentData() :engine(0), component(0), qmlElement(0) {} ~ComponentData() { delete qmlElement; delete component; delete engine; } QQmlEngine *engine; QQmlComponent *component; QObject *qmlElement; }; #endif // QMLTESTUTIL_H