diff options
author | Jens Bache-Wiig <jens.bache-wiig@nokia.com> | 2010-09-08 12:23:40 +0200 |
---|---|---|
committer | Jens Bache-Wiig <jens.bache-wiig@nokia.com> | 2010-09-08 12:23:40 +0200 |
commit | 4753082a99e42d8ebb3f93711183fa3d8afc70a0 (patch) | |
tree | f83c2331e93b1d553b42bca8839b2e0e2b24c3fd | |
parent | f640900e20490e061020fe7c352439aa3167167f (diff) |
Add initial test framewrok
-rw-r--r-- | tests/canvas/canvas.pro | 12 | ||||
-rw-r--r-- | tests/canvas/tst_canvas.cpp | 90 | ||||
-rw-r--r-- | tests/declarative.pro | 3 |
3 files changed, 105 insertions, 0 deletions
diff --git a/tests/canvas/canvas.pro b/tests/canvas/canvas.pro new file mode 100644 index 0000000..2efd5b8 --- /dev/null +++ b/tests/canvas/canvas.pro @@ -0,0 +1,12 @@ +load(qttest_p4) + +QT += declarative +SOURCES += tst_canvas.cpp + +SOURCES += ../../src/canvas.cpp +SOURCES += ../../src/context2d.cpp +HEADERS += ../../src/canvas.h +HEADERS += ../../src/context2d.h + +DEFINES += SRCDIR=\\\"$$PWD\\\" + diff --git a/tests/canvas/tst_canvas.cpp b/tests/canvas/tst_canvas.cpp new file mode 100644 index 0000000..743b600 --- /dev/null +++ b/tests/canvas/tst_canvas.cpp @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the examples of the Qt Toolkit. +** +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <qtest.h> +#include <QTextDocument> +#include <QDir> +#include <QtDeclarative> +#include <QDeclarativeEngine> +#include "../../src/canvas.h" + +class tst_canvas : public QObject + +{ + Q_OBJECT + +private slots: + void create(); + void initTestCase(); + +private: + QDeclarativeEngine engine; +}; + +void tst_canvas::initTestCase() +{ + qDebug("init"); + const char *uri ="com.nokia.qmlcanvas"; + qmlRegisterType<Canvas>(uri, 1, 0, "Canvas"); + qmlRegisterType<Context2D>(uri, 1, 0, "Context2D"); + qmlRegisterUncreatableType<CanvasImage>(uri, 1, 0, "CanvasImage", QString()); + qmlRegisterUncreatableType<CanvasGradient>(uri, 1, 0, "Gradient", QString()); +} + + +void tst_canvas::create() +{ + QString componentStr = "import Qt 4.7 \n" + "import com.nokia.qmlcanvas 1.0\n" + "Canvas { width: 300; height: 300 }"; + QDeclarativeComponent component(&engine); + component.setData(componentStr.toLatin1(), QUrl::fromLocalFile("")); + qDebug("a %p", component.create()); + Canvas *obj = qobject_cast<Canvas*>(component.create()); + QVERIFY(obj != 0); + QCOMPARE(obj->width(), 300.); + QCOMPARE(obj->height(), 300.); + QCOMPARE(obj->fillMode(), Canvas::Stretch); + delete obj; +} + + +QTEST_MAIN(tst_canvas) + +#include "tst_canvas.moc" diff --git a/tests/declarative.pro b/tests/declarative.pro new file mode 100644 index 0000000..c76dac3 --- /dev/null +++ b/tests/declarative.pro @@ -0,0 +1,3 @@ +TEMPLATE = subdirs +SUBDIRS += canvas + |