aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/quick/qquickanimations/tst_qquickanimations.cpp
diff options
context:
space:
mode:
authorCharles Yin <yinyunqiao@gmail.com>2012-03-16 23:15:00 +1000
committerQt by Nokia <qt-info@nokia.com>2012-04-17 03:03:07 +0200
commitc38bec0e1ecf5f681dc3dc2e3ab75ded91131e88 (patch)
treea90dbe478ab06df1abfc252d4c9834b03d8f982f /tests/auto/quick/qquickanimations/tst_qquickanimations.cpp
parentb20df2bf54aec02f46d960868562cf1b100d455c (diff)
Fine-tune animation's pause()/resume() behaviors
Only allow pause/resume to be used while running, and when stop the animation reset the paused value to false. Change-Id: Ia465045006478936146356f9e2e0632614c6b527 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Diffstat (limited to 'tests/auto/quick/qquickanimations/tst_qquickanimations.cpp')
-rw-r--r--tests/auto/quick/qquickanimations/tst_qquickanimations.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/auto/quick/qquickanimations/tst_qquickanimations.cpp b/tests/auto/quick/qquickanimations/tst_qquickanimations.cpp
index 878cd55eb9..7460263d71 100644
--- a/tests/auto/quick/qquickanimations/tst_qquickanimations.cpp
+++ b/tests/auto/quick/qquickanimations/tst_qquickanimations.cpp
@@ -624,6 +624,32 @@ void tst_qquickanimations::resume()
QTest::qWait(400);
animation.stop();
QVERIFY(rect.x() > x);
+
+ animation.start();
+ QVERIFY(animation.isRunning());
+ animation.pause();
+ QVERIFY(animation.isPaused());
+ animation.resume();
+ QVERIFY(!animation.isPaused());
+
+ QSignalSpy spy(&animation, SIGNAL(pausedChanged(bool)));
+ animation.pause();
+ QCOMPARE(spy.count(), 1);
+ QVERIFY(animation.isPaused());
+ animation.stop();
+ QVERIFY(!animation.isPaused());
+ QCOMPARE(spy.count(), 2);
+
+ qmlRegisterType<QQuickPropertyAnimation>("QtQuick",2,0,"PropertyAnimation"); //make sure QQuickPropertyAnimation has correct qml type name
+ QByteArray message = "<Unknown File>: QML PropertyAnimation: setPaused() cannot be used when animation isn't running.";
+ QTest::ignoreMessage(QtWarningMsg, message);
+ animation.pause();
+ QCOMPARE(spy.count(), 2);
+ QVERIFY(!animation.isPaused());
+ animation.resume();
+ QVERIFY(!animation.isPaused());
+ QVERIFY(!animation.isRunning());
+ QCOMPARE(spy.count(), 2);
}
void tst_qquickanimations::dotProperty()