From 463c9999bb7840633cd36e756671d645f7a8e051 Mon Sep 17 00:00:00 2001 From: Christian Kamm <christian.d.kamm@nokia.com> Date: Mon, 14 Nov 2011 15:28:39 +0100 Subject: [PATCH] Plugin tests: Fix '-test all'. Change-Id: I97554a61d5f42bf46df30d003135d212fa353fb9 Reviewed-by: Bill King <bill.king@nokia.com> Reviewed-by: Eike Ziller <eike.ziller@nokia.com> --- src/libs/extensionsystem/pluginmanager.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libs/extensionsystem/pluginmanager.cpp b/src/libs/extensionsystem/pluginmanager.cpp index 349c36694b9..46e6587c528 100644 --- a/src/libs/extensionsystem/pluginmanager.cpp +++ b/src/libs/extensionsystem/pluginmanager.cpp @@ -648,6 +648,8 @@ void PluginManager::startTests() { #ifdef WITH_TESTS foreach (PluginSpec *pluginSpec, d->testSpecs) { + if (!pluginSpec->plugin()) + continue; const QMetaObject *mo = pluginSpec->plugin()->metaObject(); QStringList methods; methods.append("arg0"); @@ -659,7 +661,10 @@ void PluginManager::startTests() methods.append(method.left(method.size()-2)); } } - QTest::qExec(pluginSpec->plugin(), methods); + // Don't run QTest::qExec with only one argument, that'd run + // *all* slots as tests. + if (methods.size() > 1) + QTest::qExec(pluginSpec->plugin(), methods); } if (!d->testSpecs.isEmpty()) QTimer::singleShot(1, QCoreApplication::instance(), SLOT(quit())); -- GitLab