summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorCaroline Chao <caroline.chao@digia.com>2012-10-17 10:02:57 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-10-17 21:05:27 +0200
commitc5ec39b6cc00d5a923e32e4858c944cda958b870 (patch)
treec997cd11231ebe1c4c287928bdbb58873a0b7c10 /tests/auto
parent048b697c0723db563ab20d82b615c55fd16f79c5 (diff)
Test: remove QSKIP from tst_qtconcurrent
Instead omit the whole tests when appropriate. Change-Id: I3a22d010b658e54d7d234b786173c62977a50c7d Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/tests/auto/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp b/tests/auto/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp
index f3f4be3f3f..acb4840ca8 100644
--- a/tests/auto/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp
+++ b/tests/auto/concurrent/qtconcurrentrun/tst_qtconcurrentrun.cpp
@@ -60,8 +60,12 @@ private slots:
#ifndef QT_NO_EXCEPTIONS
void exceptions();
#endif
+#ifdef Q_COMPILER_DECLTYPE
void functor();
+#endif
+#ifdef Q_COMPILER_LAMBDA
void lambda();
+#endif
};
void light()
@@ -398,6 +402,8 @@ void tst_QtConcurrentRun::exceptions()
}
#endif
+#ifdef Q_COMPILER_DECLTYPE
+// Compiler supports decltype
struct Functor {
int operator()() { return 42; }
double operator()(double a, double b) { return a/b; }
@@ -412,9 +418,6 @@ struct Functor {
// This tests functor without result_type; decltype need to be supported by the compiler.
void tst_QtConcurrentRun::functor()
{
-#ifndef Q_COMPILER_DECLTYPE
- QSKIP("Compiler does not support decltype");
-#else
Functor f;
{
QFuture<int> fut = QtConcurrent::run(f);
@@ -435,14 +438,13 @@ void tst_QtConcurrentRun::functor()
QtConcurrent::run(f, 1,2,3,4).waitForFinished();
QtConcurrent::run(f, 1,2,3,4,5).waitForFinished();
}
-#endif
}
+#endif
+#ifdef Q_COMPILER_LAMBDA
+// Compiler supports lambda
void tst_QtConcurrentRun::lambda()
{
-#ifndef Q_COMPILER_LAMBDA
- QSKIP("Compiler does not support lambda");
-#else
QCOMPARE(QtConcurrent::run([](){ return 45; }).result(), 45);
QCOMPARE(QtConcurrent::run([](int a){ return a+15; }, 12).result(), 12+15);
QCOMPARE(QtConcurrent::run([](int a, double b){ return a + b; }, 12, 15).result(), double(12+15));
@@ -456,8 +458,8 @@ void tst_QtConcurrentRun::lambda()
QCOMPARE(r, QStringList({"Hello", "World", "Foo"}));
}
#endif
-#endif
}
+#endif
QTEST_MAIN(tst_QtConcurrentRun)
#include "tst_qtconcurrentrun.moc"