From c38bec0e1ecf5f681dc3dc2e3ab75ded91131e88 Mon Sep 17 00:00:00 2001 From: Charles Yin Date: Fri, 16 Mar 2012 23:15:00 +1000 Subject: 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 --- .../qquickanimations/tst_qquickanimations.cpp | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'tests/auto/quick/qquickanimations/tst_qquickanimations.cpp') 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("QtQuick",2,0,"PropertyAnimation"); //make sure QQuickPropertyAnimation has correct qml type name + QByteArray message = ": 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() -- cgit v1.2.3