summaryrefslogtreecommitdiffstats
path: root/tests/auto/qpauseanimation
diff options
context:
space:
mode:
authorHolger Ihrig <holger.ihrig@nokia.com>2011-08-23 12:48:34 +0200
committerHolger Ihrig <holger.ihrig@nokia.com>2011-08-24 10:09:19 +0200
commita0d09cc3cd6f5ccd2d65d9eee1192624a4f55055 (patch)
tree67688457f9354cb4b7e63365277f44dff36364b3 /tests/auto/qpauseanimation
parent79df6d8e043d7c2c36334321ec1e13b4b85f5852 (diff)
Moving Tests to new Autotest Structure
Bring new Structure for Autotests Corelib into place Moving Corelib/Animation Tests Added new Autotests to corelib/animation Task-number: QTBUG-21066 Change-Id: I754bbcc2b0a512e6df4c0d768ae6ff9c261ff210 Reviewed-on: http://codereview.qt.nokia.com/3404 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Diffstat (limited to 'tests/auto/qpauseanimation')
-rw-r--r--tests/auto/qpauseanimation/qpauseanimation.pro5
-rw-r--r--tests/auto/qpauseanimation/tst_qpauseanimation.cpp426
2 files changed, 0 insertions, 431 deletions
diff --git a/tests/auto/qpauseanimation/qpauseanimation.pro b/tests/auto/qpauseanimation/qpauseanimation.pro
deleted file mode 100644
index 7f612b69fe..0000000000
--- a/tests/auto/qpauseanimation/qpauseanimation.pro
+++ /dev/null
@@ -1,5 +0,0 @@
-load(qttest_p4)
-QT = core core-private gui gui-private
-SOURCES += tst_qpauseanimation.cpp
-
-
diff --git a/tests/auto/qpauseanimation/tst_qpauseanimation.cpp b/tests/auto/qpauseanimation/tst_qpauseanimation.cpp
deleted file mode 100644
index ea99e19fb3..0000000000
--- a/tests/auto/qpauseanimation/tst_qpauseanimation.cpp
+++ /dev/null
@@ -1,426 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the test suite of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include <QtTest/QtTest>
-
-#include <QtCore/qpauseanimation.h>
-#include <QtCore/qpropertyanimation.h>
-#include <QtCore/qsequentialanimationgroup.h>
-
-#include <private/qabstractanimation_p.h>
-
-//TESTED_CLASS=QPauseAnimation
-//TESTED_FILES=
-
-class TestablePauseAnimation : public QPauseAnimation
-{
- Q_OBJECT
-public:
- TestablePauseAnimation(QObject *parent = 0)
- : QPauseAnimation(parent),
- m_updateCurrentTimeCount(0)
- {
- }
-
- int m_updateCurrentTimeCount;
-protected:
- void updateCurrentTime(int currentTime)
- {
- //qDebug() << this << "update current time: " << currentTime;
- QPauseAnimation::updateCurrentTime(currentTime);
- ++m_updateCurrentTimeCount;
- }
-};
-
-class EnableConsistentTiming
-{
-public:
- EnableConsistentTiming()
- {
- QUnifiedTimer *timer = QUnifiedTimer::instance();
- timer->setConsistentTiming(true);
- }
- ~EnableConsistentTiming()
- {
- QUnifiedTimer *timer = QUnifiedTimer::instance();
- timer->setConsistentTiming(false);
- }
-};
-
-class tst_QPauseAnimation : public QObject
-{
- Q_OBJECT
-public:
- tst_QPauseAnimation();
- virtual ~tst_QPauseAnimation();
-
-public Q_SLOTS:
- void initTestCase();
-
-private slots:
- void changeDirectionWhileRunning();
- void noTimerUpdates_data();
- void noTimerUpdates();
- void multiplePauseAnimations();
- void pauseAndPropertyAnimations();
- void pauseResume();
- void sequentialPauseGroup();
- void sequentialGroupWithPause();
- void multipleSequentialGroups();
- void zeroDuration();
-};
-
-tst_QPauseAnimation::tst_QPauseAnimation()
-{
-}
-
-tst_QPauseAnimation::~tst_QPauseAnimation()
-{
-}
-
-void tst_QPauseAnimation::initTestCase()
-{
- qRegisterMetaType<QAbstractAnimation::State>("QAbstractAnimation::State");
- qRegisterMetaType<QAbstractAnimation::DeletionPolicy>("QAbstractAnimation::DeletionPolicy");
-}
-
-void tst_QPauseAnimation::changeDirectionWhileRunning()
-{
- EnableConsistentTiming enabled;
-
- TestablePauseAnimation animation;
- animation.setDuration(400);
- animation.start();
- QTest::qWait(100);
- QVERIFY(animation.state() == QAbstractAnimation::Running);
- animation.setDirection(QAbstractAnimation::Backward);
- QTest::qWait(animation.totalDuration() + 50);
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
-}
-
-void tst_QPauseAnimation::noTimerUpdates_data()
-{
- QTest::addColumn<int>("duration");
- QTest::addColumn<int>("loopCount");
-
- QTest::newRow("0") << 200 << 1;
- QTest::newRow("1") << 160 << 1;
- QTest::newRow("2") << 160 << 2;
- QTest::newRow("3") << 200 << 3;
-}
-
-void tst_QPauseAnimation::noTimerUpdates()
-{
- EnableConsistentTiming enabled;
-
- QFETCH(int, duration);
- QFETCH(int, loopCount);
-
- TestablePauseAnimation animation;
- animation.setDuration(duration);
- animation.setLoopCount(loopCount);
- animation.start();
- QTest::qWait(animation.totalDuration() + 100);
-
-#ifdef Q_OS_WIN
- if (animation.state() != QAbstractAnimation::Stopped)
- QEXPECT_FAIL("", "On windows, consistent timing is not working properly due to bad timer resolution", Abort);
-#endif
-
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QCOMPARE(animation.m_updateCurrentTimeCount, 1 + loopCount);
-}
-
-void tst_QPauseAnimation::multiplePauseAnimations()
-{
- EnableConsistentTiming enabled;
-
- TestablePauseAnimation animation;
- animation.setDuration(200);
-
- TestablePauseAnimation animation2;
- animation2.setDuration(800);
-
- animation.start();
- animation2.start();
- QTest::qWait(animation.totalDuration() + 100);
-
-#ifdef Q_OS_WIN
- if (animation.state() != QAbstractAnimation::Stopped)
- QEXPECT_FAIL("", "On windows, consistent timing is not working properly due to bad timer resolution", Abort);
-#endif
-
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation2.state() == QAbstractAnimation::Running);
- QCOMPARE(animation.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 2);
-
- QTest::qWait(550);
-
-#ifdef Q_OS_WIN
- if (animation2.state() != QAbstractAnimation::Stopped)
- QEXPECT_FAIL("", "On windows, consistent timing is not working properly due to bad timer resolution", Abort);
-#endif
-
- QVERIFY(animation2.state() == QAbstractAnimation::Stopped);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 3);
-}
-
-void tst_QPauseAnimation::pauseAndPropertyAnimations()
-{
- EnableConsistentTiming enabled;
-
- TestablePauseAnimation pause;
- pause.setDuration(200);
-
- QObject o;
- o.setProperty("ole", 42);
-
- QPropertyAnimation animation(&o, "ole");
- animation.setEndValue(43);
-
- pause.start();
-
- QTest::qWait(100);
- animation.start();
-
- QVERIFY(animation.state() == QAbstractAnimation::Running);
- QVERIFY(pause.state() == QAbstractAnimation::Running);
- QCOMPARE(pause.m_updateCurrentTimeCount, 2);
-
- QTest::qWait(animation.totalDuration() + 100);
-
-#ifdef Q_OS_WIN
- if (animation.state() != QAbstractAnimation::Stopped)
- QEXPECT_FAIL("", "On windows, consistent timing is not working properly due to bad timer resolution", Abort);
-#endif
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QVERIFY(pause.state() == QAbstractAnimation::Stopped);
- QVERIFY(pause.m_updateCurrentTimeCount > 3);
-}
-
-void tst_QPauseAnimation::pauseResume()
-{
- TestablePauseAnimation animation;
- animation.setDuration(400);
- animation.start();
- QVERIFY(animation.state() == QAbstractAnimation::Running);
- QTest::qWait(200);
- animation.pause();
- QVERIFY(animation.state() == QAbstractAnimation::Paused);
- animation.start();
- QTest::qWait(300);
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QCOMPARE(animation.m_updateCurrentTimeCount, 3);
-}
-
-void tst_QPauseAnimation::sequentialPauseGroup()
-{
- QSequentialAnimationGroup group;
-
- TestablePauseAnimation animation1(&group);
- animation1.setDuration(200);
- TestablePauseAnimation animation2(&group);
- animation2.setDuration(200);
- TestablePauseAnimation animation3(&group);
- animation3.setDuration(200);
-
- group.start();
- QCOMPARE(animation1.m_updateCurrentTimeCount, 1);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 0);
- QCOMPARE(animation3.m_updateCurrentTimeCount, 0);
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(animation1.state() == QAbstractAnimation::Running);
- QVERIFY(animation2.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation3.state() == QAbstractAnimation::Stopped);
-
- group.setCurrentTime(250);
- QCOMPARE(animation1.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 1);
- QCOMPARE(animation3.m_updateCurrentTimeCount, 0);
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(animation1.state() == QAbstractAnimation::Stopped);
- QCOMPARE((QAbstractAnimation*)&animation2, group.currentAnimation());
- QVERIFY(animation2.state() == QAbstractAnimation::Running);
- QVERIFY(animation3.state() == QAbstractAnimation::Stopped);
-
- group.setCurrentTime(500);
- QCOMPARE(animation1.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation3.m_updateCurrentTimeCount, 1);
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(animation1.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation2.state() == QAbstractAnimation::Stopped);
- QCOMPARE((QAbstractAnimation*)&animation3, group.currentAnimation());
- QVERIFY(animation3.state() == QAbstractAnimation::Running);
-
- group.setCurrentTime(750);
-
- QVERIFY(group.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation1.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation2.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation3.state() == QAbstractAnimation::Stopped);
-
- QCOMPARE(animation1.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation2.m_updateCurrentTimeCount, 2);
- QCOMPARE(animation3.m_updateCurrentTimeCount, 2);
-}
-
-void tst_QPauseAnimation::sequentialGroupWithPause()
-{
- QSequentialAnimationGroup group;
-
- QObject o;
- o.setProperty("ole", 42);
-
- QPropertyAnimation animation(&o, "ole", &group);
- animation.setEndValue(43);
- TestablePauseAnimation pause(&group);
- pause.setDuration(250);
-
- group.start();
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(animation.state() == QAbstractAnimation::Running);
- QVERIFY(pause.state() == QAbstractAnimation::Stopped);
-
- group.setCurrentTime(300);
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QCOMPARE((QAbstractAnimation*)&pause, group.currentAnimation());
- QVERIFY(pause.state() == QAbstractAnimation::Running);
-
- group.setCurrentTime(600);
-
- QVERIFY(group.state() == QAbstractAnimation::Stopped);
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QVERIFY(pause.state() == QAbstractAnimation::Stopped);
-
- QCOMPARE(pause.m_updateCurrentTimeCount, 2);
-}
-
-void tst_QPauseAnimation::multipleSequentialGroups()
-{
- EnableConsistentTiming enabled;
-
- QParallelAnimationGroup group;
- group.setLoopCount(2);
-
- QSequentialAnimationGroup subgroup1(&group);
-
- QObject o;
- o.setProperty("ole", 42);
-
- QPropertyAnimation animation(&o, "ole", &subgroup1);
- animation.setEndValue(43);
- animation.setDuration(300);
- TestablePauseAnimation pause(&subgroup1);
- pause.setDuration(200);
-
- QSequentialAnimationGroup subgroup2(&group);
-
- o.setProperty("ole2", 42);
- QPropertyAnimation animation2(&o, "ole2", &subgroup2);
- animation2.setEndValue(43);
- animation2.setDuration(200);
- TestablePauseAnimation pause2(&subgroup2);
- pause2.setDuration(250);
-
- QSequentialAnimationGroup subgroup3(&group);
-
- TestablePauseAnimation pause3(&subgroup3);
- pause3.setDuration(400);
-
- o.setProperty("ole3", 42);
- QPropertyAnimation animation3(&o, "ole3", &subgroup3);
- animation3.setEndValue(43);
- animation3.setDuration(200);
-
- QSequentialAnimationGroup subgroup4(&group);
-
- TestablePauseAnimation pause4(&subgroup4);
- pause4.setDuration(310);
-
- TestablePauseAnimation pause5(&subgroup4);
- pause5.setDuration(60);
-
- group.start();
-
- QVERIFY(group.state() == QAbstractAnimation::Running);
- QVERIFY(subgroup1.state() == QAbstractAnimation::Running);
- QVERIFY(subgroup2.state() == QAbstractAnimation::Running);
- QVERIFY(subgroup3.state() == QAbstractAnimation::Running);
- QVERIFY(subgroup4.state() == QAbstractAnimation::Running);
-
- // This is a pretty long animation so it tends to get rather out of sync
- // when using the consistent timer, so run for an extra half second for good
- // measure...
- QTest::qWait(group.totalDuration() + 500);
-
-#ifdef Q_OS_WIN
- if (group.state() != QAbstractAnimation::Stopped)
- QEXPECT_FAIL("", "On windows, consistent timing is not working properly due to bad timer resolution", Abort);
-#endif
- QVERIFY(group.state() == QAbstractAnimation::Stopped);
- QVERIFY(subgroup1.state() == QAbstractAnimation::Stopped);
- QVERIFY(subgroup2.state() == QAbstractAnimation::Stopped);
- QVERIFY(subgroup3.state() == QAbstractAnimation::Stopped);
- QVERIFY(subgroup4.state() == QAbstractAnimation::Stopped);
-
- QCOMPARE(pause5.m_updateCurrentTimeCount, 4);
-}
-
-void tst_QPauseAnimation::zeroDuration()
-{
- TestablePauseAnimation animation;
- animation.setDuration(0);
- animation.start();
- QTest::qWait(animation.totalDuration() + 100);
- QVERIFY(animation.state() == QAbstractAnimation::Stopped);
- QCOMPARE(animation.m_updateCurrentTimeCount, 1);
-}
-
-QTEST_MAIN(tst_QPauseAnimation)
-#include "tst_qpauseanimation.moc"