From bcc23e7942debca71f5aa13af3e512aeb5bb4fe7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 10:53:39 +0100 Subject: Make tst_qtimeline::duration less fragile to timings The test still can fail because 1s is quite a short time. Change-Id: I6f42c182f2932d5a053f6a69667210529c9a7697 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 507f7e3992..79118791d0 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -174,11 +174,9 @@ void tst_QTimeLine::duration() QCOMPARE(timeLine.duration(), 1000); timeLine.start(); - QTest::qWait(999); - QCOMPARE(timeLine.state(), QTimeLine::Running); - QVERIFY(timeLine.currentTime() > 900); - QTest::qWait(100); - QCOMPARE(timeLine.state(), QTimeLine::NotRunning); + QTRY_COMPARE(timeLine.state(), QTimeLine::Running); + QTRY_VERIFY(timeLine.currentTime() > 0); + QTRY_COMPARE(timeLine.state(), QTimeLine::NotRunning); QCOMPARE(timeLine.currentTime(), 1000); // The duration shouldn't change QCOMPARE(timeLine.duration(), 1000); @@ -187,7 +185,7 @@ void tst_QTimeLine::duration() void tst_QTimeLine::frameRate() { QTimeLine timeLine; - timeLine.setFrameRange(10, 20); + timeLine.setFrameRange(100, 2000); QCOMPARE(timeLine.updateInterval(), 1000 / 25); timeLine.setUpdateInterval(1000 / 60); QCOMPARE(timeLine.updateInterval(), 1000 / 60); -- cgit v1.2.3 From 229c03cd88ab9ed6453eb39df907825193a87af4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 11:13:10 +0100 Subject: Make tst_qtimeline::range less prune to timing errors Change-Id: I5fd84c58250a9dfa237fcb7fca4da50c35a9f57e Reviewed-by: Friedemann Kleint --- .../auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 27 ++++++++-------------- 1 file changed, 9 insertions(+), 18 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 79118791d0..8d42fc9d44 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -93,29 +93,20 @@ void tst_QTimeLine::range() QCOMPARE(timeLine.endFrame(), 16); // Verify that you can change the range in the timeLine - timeLine.setFrameRange(10, 20); + timeLine.setFrameRange(1000, 2000); QSignalSpy spy(&timeLine, &QTimeLine::frameChanged); QVERIFY(spy.isValid()); - timeLine.start(); -#ifdef Q_OS_WINCE - QTest::qWait(1000); -#else - QTest::qWait(100); -#endif - QCOMPARE(timeLine.state(), QTimeLine::Running); + timeLine.start(); // make sure that the logic works for a running timeline + QTRY_COMPARE(timeLine.state(), QTimeLine::Running); + timeLine.setCurrentTime(timeLine.duration()/2); int oldValue = timeLine.currentFrame(); - timeLine.setFrameRange(0, 5); + timeLine.setFrameRange(0, 500); QVERIFY(timeLine.currentFrame() < oldValue); - timeLine.setEndFrame(100); - timeLine.setStartFrame(50); + timeLine.setEndFrame(10000); + timeLine.setStartFrame(5000); QVERIFY(timeLine.currentFrame() > oldValue); - timeLine.setFrameRange(0, 5); -#ifdef Q_OS_WINCE - QTest::qWait(500); -#else - QTest::qWait(50); -#endif - QVERIFY(spy.count() > 1); + timeLine.setFrameRange(0, 500); + QTRY_VERIFY(spy.count() > 1); QVERIFY(timeLine.currentFrame() < oldValue); } -- cgit v1.2.3 From 70e290411a3dd9549492a9770429952bd25134a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 12:28:51 +0100 Subject: Improve tst_qtimeline::currentTime Now the test is less fragile to time and it executes 4s faster Change-Id: Id3eb8ed2c03317e7d2f2c3cd17f889a8d8e7e5b4 Reviewed-by: Friedemann Kleint --- .../auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 30 ++++++++++------------ 1 file changed, 13 insertions(+), 17 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 8d42fc9d44..07531f6a7f 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -114,19 +114,17 @@ void tst_QTimeLine::currentTime() { QTimeLine timeLine(2000); timeLine.setUpdateInterval((timeLine.duration()/2) / 33); - QSignalSpy spy(&timeLine, &QTimeLine::valueChanged); - QVERIFY(spy.isValid()); timeLine.setFrameRange(10, 20); QCOMPARE(timeLine.currentTime(), 0); timeLine.start(); - QTest::qWait(timeLine.duration()/2); - QCOMPARE(timeLine.state(), QTimeLine::Running); - QVERIFY(timeLine.currentTime() > timeLine.duration()/2 - timeLine.duration()/10); - QVERIFY(timeLine.currentTime() < timeLine.duration()/2 + timeLine.duration()/10); - QTest::qWait(timeLine.duration()/4 + timeLine.duration()); - QCOMPARE(timeLine.state(), QTimeLine::NotRunning); + QTRY_COMPARE(timeLine.state(), QTimeLine::Running); + QTRY_VERIFY(timeLine.currentTime() > timeLine.duration()/2 - timeLine.duration()/4); + QVERIFY(timeLine.currentTime() < timeLine.duration()/2 + timeLine.duration()/4); + QTRY_COMPARE(timeLine.state(), QTimeLine::NotRunning); QCOMPARE(timeLine.currentTime(), timeLine.duration()); + QSignalSpy spy(&timeLine, &QTimeLine::valueChanged); + QVERIFY(spy.isValid()); spy.clear(); timeLine.setCurrentTime(timeLine.duration()/2); timeLine.setCurrentTime(timeLine.duration()/2); @@ -135,24 +133,22 @@ void tst_QTimeLine::currentTime() QCOMPARE(timeLine.currentTime(), timeLine.duration()/2); timeLine.resume(); // Let it update on its own - QTest::qWait(timeLine.duration()/4); QCOMPARE(timeLine.state(), QTimeLine::Running); - QVERIFY(timeLine.currentTime() > timeLine.duration()/2); + QTRY_VERIFY(timeLine.currentTime() > timeLine.duration()/2); QVERIFY(timeLine.currentTime() < timeLine.duration()); - QTest::qWait(timeLine.duration()/4 + timeLine.duration()); - QCOMPARE(timeLine.state(), QTimeLine::NotRunning); - QVERIFY(timeLine.currentTime() == timeLine.duration()); + QTRY_COMPARE(timeLine.state(), QTimeLine::NotRunning); + QCOMPARE(timeLine.currentTime(), timeLine.duration()); // Reverse should decrease the currentTime timeLine.setCurrentTime(timeLine.duration()/2); timeLine.start(); // Let it update on its own - QTest::qWait(timeLine.duration()/4); - QCOMPARE(timeLine.state(), QTimeLine::Running); int currentTime = timeLine.currentTime(); + QTRY_VERIFY(timeLine.currentTime() > currentTime); + QCOMPARE(timeLine.state(), QTimeLine::Running); + currentTime = timeLine.currentTime(); timeLine.setDirection(QTimeLine::Backward); - QTest::qWait(timeLine.duration()/4); - QVERIFY(timeLine.currentTime() < currentTime); + QTRY_VERIFY(timeLine.currentTime() < currentTime); timeLine.stop(); } -- cgit v1.2.3 From 266511401f8d513aaeca1380248e5534e33bf55e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 12:35:47 +0100 Subject: Improve tst_qtimeline::currentFrame The test run faster and it less vulnerable to an inaccurate time. Change-Id: I19475095395dcf1e6d47fdbba5eeffabab1fc7b9 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 07531f6a7f..91e095f541 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -236,22 +236,19 @@ void tst_QTimeLine::currentFrame() QSignalSpy spy(&timeLine, &QTimeLine::frameChanged); QVERIFY(spy.isValid()); timeLine.start(); - QTest::qWait(timeLine.duration()/3); - QVERIFY(timeLine.currentFrame() > 10); - QTest::qWait(timeLine.duration()); - QCOMPARE(timeLine.state(), QTimeLine::NotRunning); + QTRY_VERIFY(timeLine.currentFrame() > 10); + QTRY_COMPARE(timeLine.state(), QTimeLine::NotRunning); QCOMPARE(timeLine.currentFrame(), 20); // Reverse should decrease the value timeLine.setCurrentTime(timeLine.duration()/2); timeLine.start(); // Let it update on its own - QTest::qWait(timeLine.duration()/4); QCOMPARE(timeLine.state(), QTimeLine::Running); + QTRY_VERIFY(timeLine.currentTime() > timeLine.duration()/2); // wait for continuation int value = timeLine.currentFrame(); timeLine.setDirection(QTimeLine::Backward); - QTest::qWait(timeLine.duration()/2); - QVERIFY(timeLine.currentFrame() < value); + QTRY_VERIFY(timeLine.currentFrame() < value); timeLine.stop(); } -- cgit v1.2.3 From 4e012cb08390beb21620b5d3fbf86ad2216b2a6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 13:23:47 +0100 Subject: Improve tst_qtimeline::value The test was improved by: - Use QCOMPARE instead of QVERIFY - Use QTRY_ macro instead arbitrary qWait - Use longer time line The test executes faster and it should be less vulnerable to an unreliable timer. Change-Id: I92675015a6251b47eaf20b0fc916f3a36b52d783 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 91e095f541..98e8ffded5 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -198,31 +198,27 @@ void tst_QTimeLine::frameRate() void tst_QTimeLine::value() { - QTimeLine timeLine(2000); - QVERIFY(timeLine.currentValue() == 0.0); + QTimeLine timeLine(5000); + QCOMPARE(timeLine.currentValue(), 0.0); // Default speed QSignalSpy spy(&timeLine, &QTimeLine::valueChanged); QVERIFY(spy.isValid()); timeLine.start(); - QTest::qWait(timeLine.duration()/3); - QVERIFY(timeLine.currentValue() > 0); - QTest::qWait(timeLine.duration()); - QCOMPARE(timeLine.state(), QTimeLine::NotRunning); - qreal currentValue = timeLine.currentValue(); - QVERIFY(currentValue == 1); + QTRY_VERIFY(timeLine.currentValue() > 0); + QTRY_COMPARE(timeLine.state(), QTimeLine::NotRunning); + QCOMPARE(timeLine.currentValue(), 1.0); QVERIFY(spy.count() > 0); // Reverse should decrease the value timeLine.setCurrentTime(100); timeLine.start(); // Let it update on its own - QTest::qWait(500); QCOMPARE(timeLine.state(), QTimeLine::Running); + QTRY_VERIFY(timeLine.currentValue()); qreal value = timeLine.currentValue(); timeLine.setDirection(QTimeLine::Backward); - QTest::qWait(1000); - QVERIFY(timeLine.currentValue() < value); + QTRY_VERIFY(timeLine.currentValue() < value); timeLine.stop(); } -- cgit v1.2.3 From 6606b151c4c4849ab0b0e6b8d62837ac87858814 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Mon, 14 Dec 2015 14:40:15 +0100 Subject: Get rid of qWait in tst_qtimeline::restart to make it less flaky Change-Id: Iba3a9e5dce6bd7ff6e241fae738cfc51386f0c75 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 98e8ffded5..9f8cfc6b6a 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -621,8 +621,7 @@ void tst_QTimeLine::restart() timeLine.setFrameRange(0,9); timeLine.start(); - QTest::qWait(timeLine.duration()*2); - QCOMPARE(timeLine.currentFrame(), timeLine.endFrame()); + QTRY_COMPARE(timeLine.currentFrame(), timeLine.endFrame()); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); // A restart with the same duration @@ -630,8 +629,7 @@ void tst_QTimeLine::restart() QCOMPARE(timeLine.state(), QTimeLine::Running); QCOMPARE(timeLine.currentFrame(), timeLine.startFrame()); QCOMPARE(timeLine.currentTime(), 0); - QTest::qWait(250); - QCOMPARE(timeLine.currentFrame(), timeLine.endFrame()); + QTRY_COMPARE(timeLine.currentFrame(), timeLine.endFrame()); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); // Set a smaller duration and restart @@ -640,8 +638,7 @@ void tst_QTimeLine::restart() QCOMPARE(timeLine.state(), QTimeLine::Running); QCOMPARE(timeLine.currentFrame(), timeLine.startFrame()); QCOMPARE(timeLine.currentTime(), 0); - QTest::qWait(250); - QCOMPARE(timeLine.currentFrame(), timeLine.endFrame()); + QTRY_COMPARE(timeLine.currentFrame(), timeLine.endFrame()); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); // Set a longer duration and restart -- cgit v1.2.3 From 8dd84c6420a7184f2ed4347395bcd6a3dae8907c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 15 Dec 2015 08:52:51 +0100 Subject: Speedup tst_qtimeline::finished Change-Id: Id9ae42663d8830365d4dcfab92b48621eb1b409f Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 9f8cfc6b6a..0ca6fea482 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -483,9 +483,8 @@ void tst_QTimeLine::finished() QSignalSpy spy(&timeLine, &QTimeLine::finished); QVERIFY(spy.isValid()); timeLine.start(); - QTest::qWait(timeLine.duration()*2); + QTRY_COMPARE(spy.count(), 1); QCOMPARE(timeLine.state(), QTimeLine::NotRunning); - QCOMPARE(spy.count(), 1); spy.clear(); timeLine.start(); -- cgit v1.2.3 From 55eaf11bb7c0a89f3dd86e56c82809f81c121e04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Tue, 15 Dec 2015 09:51:12 +0100 Subject: Stabilize tst_qtimeline::resume Change-Id: Ife0ce27c680196ed1fe3d037ea0367e511560c96 Reviewed-by: Friedemann Kleint --- tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp index 0ca6fea482..b588e1fe82 100644 --- a/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp +++ b/tests/auto/corelib/tools/qtimeline/tst_qtimeline.cpp @@ -583,16 +583,15 @@ void tst_QTimeLine::resume() { QCOMPARE(timeLine.currentTime(), 0); timeLine.start(); - QTest::qWait(250); + QTRY_VERIFY(timeLine.currentTime() > 0); timeLine.stop(); int oldCurrentTime = timeLine.currentTime(); QVERIFY(oldCurrentTime > 0); QVERIFY(oldCurrentTime < 1000); timeLine.resume(); - QTest::qWait(250); + QTRY_VERIFY(timeLine.currentTime() > oldCurrentTime); timeLine.stop(); int currentTime = timeLine.currentTime(); - QVERIFY(currentTime > oldCurrentTime); QVERIFY(currentTime < 1000); } timeLine.setDirection(QTimeLine::Backward); @@ -600,13 +599,13 @@ void tst_QTimeLine::resume() timeLine.setCurrentTime(1000); QCOMPARE(timeLine.currentTime(), 1000); timeLine.start(); - QTest::qWait(250); + QTRY_VERIFY(timeLine.currentTime() < 1000); timeLine.stop(); int oldCurrentTime = timeLine.currentTime(); QVERIFY(oldCurrentTime < 1000); QVERIFY(oldCurrentTime > 0); timeLine.resume(); - QTest::qWait(250); + QTRY_VERIFY(timeLine.currentTime() < oldCurrentTime); timeLine.stop(); int currentTime = timeLine.currentTime(); QVERIFY(currentTime < oldCurrentTime); -- cgit v1.2.3 From a2d218cc41c97f184465611c13d6dbbc2a72d858 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 23 Dec 2015 02:12:35 +0100 Subject: tst_collections: "explicit instantiation of 'NS::QList' must occur in namespace 'NS'" Probably correct. The question is just why this code has survived for so many years. Change-Id: Iaf01850476f9b066243abebb9ee6c5928d7ada19 Reviewed-by: Simon Hausmann --- tests/auto/corelib/tools/collections/tst_collections.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tests/auto/corelib/tools') diff --git a/tests/auto/corelib/tools/collections/tst_collections.cpp b/tests/auto/corelib/tools/collections/tst_collections.cpp index ae8ffe48be..b9487cee33 100644 --- a/tests/auto/corelib/tools/collections/tst_collections.cpp +++ b/tests/auto/corelib/tools/collections/tst_collections.cpp @@ -90,7 +90,9 @@ void foo() #include "qvector.h" #include "qqueue.h" +QT_BEGIN_NAMESPACE template class QList; +QT_END_NAMESPACE class tst_Collections : public QObject { -- cgit v1.2.3