From 8ef42cce44598f6bc7271d66fe0a9351e4310213 Mon Sep 17 00:00:00 2001 From: Bill King Date: Wed, 16 Feb 2011 13:40:44 +0100 Subject: [PATCH] PluginManager: add -test all capability for internal testing. --- src/libs/extensionsystem/optionsparser.cpp | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/libs/extensionsystem/optionsparser.cpp b/src/libs/extensionsystem/optionsparser.cpp index 9b093d309ad..cf5ce782081 100644 --- a/src/libs/extensionsystem/optionsparser.cpp +++ b/src/libs/extensionsystem/optionsparser.cpp @@ -107,14 +107,21 @@ bool OptionsParser::checkForTestOption() if (m_currentArg != QLatin1String(TEST_OPTION)) return false; if (nextToken(RequiredToken)) { - PluginSpec *spec = m_pmPrivate->pluginByName(m_currentArg); - if (!spec) { - if (m_errorString) - *m_errorString = QCoreApplication::translate("PluginManager", - "The plugin '%1' does not exist.").arg(m_currentArg); - m_hasError = true; + if(m_currentArg == "all") { + foreach(PluginSpec *spec, m_pmPrivate->pluginSpecs) { + if (spec) + m_pmPrivate->testSpecs.append(spec); + } } else { - m_pmPrivate->testSpecs.append(spec); + PluginSpec *spec = m_pmPrivate->pluginByName(m_currentArg); + if (!spec) { + if (m_errorString) + *m_errorString = QCoreApplication::translate("PluginManager", + "The plugin '%1' does not exist.").arg(m_currentArg); + m_hasError = true; + } else { + m_pmPrivate->testSpecs.append(spec); + } } } return true;