summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp
diff options
context:
space:
mode:
authorJoona Petrell <joona.t.petrell@nokia.com>2010-02-23 05:41:25 (GMT)
committerJoona Petrell <joona.t.petrell@nokia.com>2010-02-23 07:34:07 (GMT)
commit23fb8f6e4f3f6fe4ae7611de84f09cc0095e240c (patch)
tree1a750425c167e2184c565345ff76886ab1871d8c /tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp
parentcb3cd645082bda7b5142ceff31e5795f2d047c39 (diff)
downloadQt-23fb8f6e4f3f6fe4ae7611de84f09cc0095e240c.zip
Qt-23fb8f6e4f3f6fe4ae7611de84f09cc0095e240c.tar.gz
Qt-23fb8f6e4f3f6fe4ae7611de84f09cc0095e240c.tar.bz2
Add missing NOTIFY signals to positioners, particles and webview
Reviewed-by: Aaron Kennedy
Diffstat (limited to 'tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp')
-rw-r--r--tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp88
1 files changed, 88 insertions, 0 deletions
diff --git a/tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp b/tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp
index 195c367..9436772 100644
--- a/tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp
+++ b/tests/auto/declarative/qmlgraphicsparticles/tst_qmlgraphicsparticles.cpp
@@ -39,6 +39,7 @@
**
****************************************************************************/
#include <QtTest/QtTest>
+#include <QtTest/QSignalSpy>
#include <qmlview.h>
#include <private/qmlgraphicsparticles_p.h>
@@ -50,6 +51,8 @@ public:
private slots:
void properties();
+ void motionGravity();
+ void motionWander();
void runs();
private:
QmlView *createView(const QString &filename);
@@ -98,6 +101,91 @@ void tst_QmlGraphicsParticles::properties()
QCOMPARE(particles->emissionRate(), 12);
}
+void tst_QmlGraphicsParticles::motionGravity()
+{
+ QmlView *canvas = createView(SRCDIR "/data/particlemotion.qml");
+ QVERIFY(canvas->rootObject());
+ QmlGraphicsParticles* particles = canvas->rootObject()->findChild<QmlGraphicsParticles*>("particles");
+ QVERIFY(particles);
+
+ QmlGraphicsParticleMotionGravity* motionGravity = canvas->rootObject()->findChild<QmlGraphicsParticleMotionGravity*>("motionGravity");
+ QCOMPARE(particles->motion(), motionGravity);
+
+ QSignalSpy xattractorSpy(motionGravity, SIGNAL(xattractorChanged()));
+ QSignalSpy yattractorSpy(motionGravity, SIGNAL(yattractorChanged()));
+ QSignalSpy accelerationSpy(motionGravity, SIGNAL(accelerationChanged()));
+
+ QCOMPARE(motionGravity->xAttractor(), 0.0);
+ QCOMPARE(motionGravity->yAttractor(), 1000.0);
+ QCOMPARE(motionGravity->acceleration(), 25.0);
+
+ motionGravity->setXAttractor(20.0);
+ motionGravity->setYAttractor(10.0);
+ motionGravity->setAcceleration(10.0);
+
+ QCOMPARE(motionGravity->xAttractor(), 20.0);
+ QCOMPARE(motionGravity->yAttractor(), 10.0);
+ QCOMPARE(motionGravity->acceleration(), 10.0);
+
+ QCOMPARE(xattractorSpy.count(), 1);
+ QCOMPARE(yattractorSpy.count(), 1);
+ QCOMPARE(accelerationSpy.count(), 1);
+
+ motionGravity->setXAttractor(20.0);
+ motionGravity->setYAttractor(10.0);
+ motionGravity->setAcceleration(10.0);
+
+ QCOMPARE(xattractorSpy.count(), 1);
+ QCOMPARE(yattractorSpy.count(), 1);
+ QCOMPARE(accelerationSpy.count(), 1);
+}
+
+void tst_QmlGraphicsParticles::motionWander()
+{
+ QmlView *canvas = createView(SRCDIR "/data/particlemotion.qml");
+ QVERIFY(canvas->rootObject());
+ QmlGraphicsParticles* particles = canvas->rootObject()->findChild<QmlGraphicsParticles*>("particles");
+ QVERIFY(particles);
+
+ QSignalSpy motionSpy(particles, SIGNAL(motionChanged()));
+ QmlGraphicsParticleMotionWander* motionWander = canvas->rootObject()->findChild<QmlGraphicsParticleMotionWander*>("motionWander");
+
+ particles->setMotion(motionWander);
+ QCOMPARE(particles->motion(),motionWander);
+ QCOMPARE(motionSpy.count(), 1);
+
+ particles->setMotion(motionWander);
+ QCOMPARE(motionSpy.count(), 1);
+
+ QSignalSpy xvarianceSpy(motionWander, SIGNAL(xvarianceChanged()));
+ QSignalSpy yvarianceSpy(motionWander, SIGNAL(yvarianceChanged()));
+ QSignalSpy paceSpy(motionWander, SIGNAL(paceChanged()));
+
+ QCOMPARE(motionWander->xVariance(), 30.0);
+ QCOMPARE(motionWander->yVariance(), 30.0);
+ QCOMPARE(motionWander->pace(), 100.0);
+
+ motionWander->setXVariance(20.0);
+ motionWander->setYVariance(10.0);
+ motionWander->setPace(10.0);
+
+ QCOMPARE(motionWander->xVariance(), 20.0);
+ QCOMPARE(motionWander->yVariance(), 10.0);
+ QCOMPARE(motionWander->pace(), 10.0);
+
+ QCOMPARE(xvarianceSpy.count(), 1);
+ QCOMPARE(yvarianceSpy.count(), 1);
+ QCOMPARE(paceSpy.count(), 1);
+
+ motionWander->setXVariance(20.0);
+ motionWander->setYVariance(10.0);
+ motionWander->setPace(10.0);
+
+ QCOMPARE(xvarianceSpy.count(), 1);
+ QCOMPARE(yvarianceSpy.count(), 1);
+ QCOMPARE(paceSpy.count(), 1);
+}
+
void tst_QmlGraphicsParticles::runs()
{
QmlView *canvas = createView(SRCDIR "/data/particles.qml");