aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmltest
diff options
context:
space:
mode:
authorCharles Yin <charles.yin@nokia.com>2012-06-12 15:38:52 +1000
committerQt by Nokia <qt-info@nokia.com>2012-07-25 04:09:33 +0200
commit3e5d9532391549cc115f4cc6a824401acd2e8600 (patch)
tree7aae2f23dedff8471258336eb3deedf27cc7373a /src/qmltest
parentf22730a3390242c45fc4c8826b301606a7a7e1cb (diff)
Add waitForRendering() function for qmltest
Change-Id: I6357412d84fdb4a8b6bd8603baba7d10a2bcc245 Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Diffstat (limited to 'src/qmltest')
-rw-r--r--src/qmltest/quicktest.cpp2
-rw-r--r--src/qmltest/quicktestresult.cpp9
-rw-r--r--src/qmltest/quicktestresult_p.h1
3 files changed, 11 insertions, 1 deletions
diff --git a/src/qmltest/quicktest.cpp b/src/qmltest/quicktest.cpp
index ef026d4573..cfa503a113 100644
--- a/src/qmltest/quicktest.cpp
+++ b/src/qmltest/quicktest.cpp
@@ -147,7 +147,7 @@ void handleCompileErrors(const QFileInfo &fi, QQuickView *view)
results.stopLogging();
}
-static bool qWaitForSignal(QObject *obj, const char* signal, int timeout = 5000)
+bool qWaitForSignal(QObject *obj, const char* signal, int timeout = 5000)
{
QSignalSpy spy(obj, signal);
QElapsedTimer timer;
diff --git a/src/qmltest/quicktestresult.cpp b/src/qmltest/quicktestresult.cpp
index f6fd873011..751ee9e6f4 100644
--- a/src/qmltest/quicktestresult.cpp
+++ b/src/qmltest/quicktestresult.cpp
@@ -65,6 +65,8 @@ static const char *globalProgramName = 0;
static bool loggingStarted = false;
static QBenchmarkGlobalData globalBenchmarkData;
+extern bool qWaitForSignal(QObject *obj, const char* signal, int timeout = 5000);
+
class Q_QUICK_TEST_EXPORT QuickTestImageObject : public QObject
{
Q_OBJECT
@@ -573,6 +575,13 @@ void QuickTestResult::sleep(int ms)
QTest::qSleep(ms);
}
+bool QuickTestResult::waitForRendering(QQuickItem *item, int timeout)
+{
+ Q_ASSERT(item);
+
+ return qWaitForSignal(item->canvas(), SIGNAL(frameSwapped()), timeout);
+}
+
void QuickTestResult::startMeasurement()
{
Q_D(QuickTestResult);
diff --git a/src/qmltest/quicktestresult_p.h b/src/qmltest/quicktestresult_p.h
index 0ef41ade29..448f2da954 100644
--- a/src/qmltest/quicktestresult_p.h
+++ b/src/qmltest/quicktestresult_p.h
@@ -132,6 +132,7 @@ public Q_SLOTS:
void wait(int ms);
void sleep(int ms);
+ bool waitForRendering(QQuickItem *item, int timeout = 5000);
void startMeasurement();
void beginDataRun();