use auto-defined QT_BUILD_*_LIB variables
[profile/ivi/qtdeclarative.git] / src / qmltest / quicktestresult_p.h
index d9ae694..76761b6 100644 (file)
@@ -1,34 +1,34 @@
 /****************************************************************************
 **
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/
 **
 ** This file is part of the test suite of the Qt Toolkit.
 **
 ** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
 ** 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.
+** 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, Nokia gives you certain additional
-** rights.  These rights are described in the Nokia Qt LGPL Exception
+** rights. These rights are described in the Nokia Qt LGPL Exception
 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
 **
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
+** 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.
 **
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
 **
 **
 **
 #include <QtCore/qstring.h>
 #include <QtCore/qstringlist.h>
 #include <QtCore/qscopedpointer.h>
+#include <QtQuick/qquickitem.h>
 
 QT_BEGIN_NAMESPACE
 
+class QUrl;
 class QuickTestResultPrivate;
 
 class Q_QUICK_TEST_EXPORT QuickTestResult : public QObject
 {
     Q_OBJECT
-    Q_ENUMS(FunctionType RunMode)
+    Q_ENUMS(RunMode)
     Q_PROPERTY(QString testCaseName READ testCaseName WRITE setTestCaseName NOTIFY testCaseNameChanged)
     Q_PROPERTY(QString functionName READ functionName WRITE setFunctionName NOTIFY functionNameChanged)
-    Q_PROPERTY(FunctionType functionType READ functionType WRITE setFunctionType NOTIFY functionTypeChanged)
     Q_PROPERTY(QString dataTag READ dataTag WRITE setDataTag NOTIFY dataTagChanged)
     Q_PROPERTY(bool failed READ isFailed)
-    Q_PROPERTY(bool dataFailed READ isDataFailed)
     Q_PROPERTY(bool skipped READ isSkipped WRITE setSkipped NOTIFY skippedChanged)
     Q_PROPERTY(int passCount READ passCount)
     Q_PROPERTY(int failCount READ failCount)
@@ -71,16 +71,6 @@ public:
     QuickTestResult(QObject *parent = 0);
     ~QuickTestResult();
 
-    // Values must match QTestResult::TestLocation.
-    enum FunctionType
-    {
-        NoWhere = 0,
-        DataFunc = 1,
-        InitFunc = 2,
-        Func = 3,
-        CleanupFunc = 4
-    };
-
     // Values must match QBenchmarkIterationController::RunMode.
     enum RunMode
     {
@@ -94,14 +84,10 @@ public:
     QString functionName() const;
     void setFunctionName(const QString &name);
 
-    FunctionType functionType() const;
-    void setFunctionType(FunctionType type);
-
     QString dataTag() const;
     void setDataTag(const QString &tag);
 
     bool isFailed() const;
-    bool isDataFailed() const;
 
     bool isSkipped() const;
     void setSkipped(bool skip);
@@ -121,21 +107,22 @@ public Q_SLOTS:
     void initTestTable();
     void clearTestTable();
 
+    void finishTestData();
+    void finishTestDataCleanup();
     void finishTestFunction();
 
-    void fail(const QString &message, const QString &file, int line);
+    void fail(const QString &message, const QUrl &location, int line);
     bool verify(bool success, const QString &message,
-                const QString &file, int line);
+                const QUrl &location, int line);
     bool compare(bool success, const QString &message,
                  const QString &val1, const QString &val2,
-                 const QString &file, int line);
-    void skipSingle(const QString &message, const QString &file, int line);
-    void skipAll(const QString &message, const QString &file, int line);
+                 const QUrl &location, int line);
+    void skip(const QString &message, const QUrl &location, int line);
     bool expectFail(const QString &tag, const QString &comment,
-                    const QString &file, int line);
+                    const QUrl &location, int line);
     bool expectFailContinue(const QString &tag, const QString &comment,
-                            const QString &file, int line);
-    void warn(const QString &message);
+                            const QUrl &location, int line);
+    void warn(const QString &message, const QUrl &location, int line);
 
     void ignoreWarning(const QString &message);
 
@@ -153,17 +140,19 @@ public Q_SLOTS:
     void nextBenchmark();
     void stopBenchmark();
 
+    QObject *grabImage(QQuickItem *item);
+
 public:
     // Helper functions for the C++ main() shell.
     static void parseArgs(int argc, char *argv[]);
     static void setProgramName(const char *name);
+    static void setCurrentAppname(const char *appname);
     static int exitCode();
 
 Q_SIGNALS:
     void programNameChanged();
     void testCaseNameChanged();
     void functionNameChanged();
-    void functionTypeChanged();
     void dataTagChanged();
     void skippedChanged();