diff options
author | Charles Yin <yinyunqiao@gmail.com> | 2012-03-16 23:15:00 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-04-17 03:03:07 +0200 |
commit | c38bec0e1ecf5f681dc3dc2e3ab75ded91131e88 (patch) | |
tree | a90dbe478ab06df1abfc252d4c9834b03d8f982f /tests/auto/quick/qquickanimations/tst_qquickanimations.cpp | |
parent | b20df2bf54aec02f46d960868562cf1b100d455c (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.cpp | 26 |
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() |