From 64bba7eda0908eaa62288fe2b2d4356211c623c4 Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@nokia.com> Date: Mon, 29 Mar 2010 17:59:58 +0200 Subject: [PATCH] Add simple unit tests for abld parser --- .../projectexplorer/outputparser_test.cpp | 1 - .../projectexplorer/outputparser_test.h | 1 + .../qt4projectmanager/qt-s60/abldparser.cpp | 50 +++++++++++++++++++ .../qt4projectmanager/qt4projectmanager.pro | 2 - .../qt4projectmanagerplugin.cpp | 5 -- .../qt4projectmanagerplugin.h | 4 +- 6 files changed, 54 insertions(+), 9 deletions(-) diff --git a/src/plugins/projectexplorer/outputparser_test.cpp b/src/plugins/projectexplorer/outputparser_test.cpp index 7d9952c100a..28a83b50011 100644 --- a/src/plugins/projectexplorer/outputparser_test.cpp +++ b/src/plugins/projectexplorer/outputparser_test.cpp @@ -134,7 +134,6 @@ void OutputParserTester::stdError(const QString &line) void OutputParserTester::appendOutputParser(IOutputParser *parser) { Q_ASSERT(!childParser()); - Q_ASSERT(!parser->childParser()); IOutputParser::appendOutputParser(parser); parser->appendOutputParser(this); diff --git a/src/plugins/projectexplorer/outputparser_test.h b/src/plugins/projectexplorer/outputparser_test.h index 58f51f2d32e..8241766bb5b 100644 --- a/src/plugins/projectexplorer/outputparser_test.h +++ b/src/plugins/projectexplorer/outputparser_test.h @@ -33,6 +33,7 @@ #if defined(WITH_TESTS) #include "projectexplorer_export.h" +#include "metatypedeclarations.h" #include "ioutputparser.h" namespace ProjectExplorer { diff --git a/src/plugins/qt4projectmanager/qt-s60/abldparser.cpp b/src/plugins/qt4projectmanager/qt-s60/abldparser.cpp index 9cc7595f3ef..692d7b30e83 100644 --- a/src/plugins/qt4projectmanager/qt-s60/abldparser.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/abldparser.cpp @@ -174,3 +174,53 @@ void AbldParser::stdError(const QString &line) } IOutputParser::stdError(line); } + +// Unit tests: + +#ifdef WITH_TESTS +# include <QTest> + +# include "qt4projectmanagerplugin.h" + +# include "projectexplorer/outputparser_test.h" + +using namespace Qt4ProjectManager::Internal; + +void Qt4ProjectManagerPlugin::testAbldOutputParsers_data() +{ + QTest::addColumn<QString>("input"); + QTest::addColumn<OutputParserTester::Channel>("inputChannel"); + QTest::addColumn<QString>("childStdOutLines"); + QTest::addColumn<QString>("childStdErrLines"); + QTest::addColumn<QList<ProjectExplorer::Task> >("tasks"); + QTest::addColumn<QString>("outputLines"); + + + QTest::newRow("pass-through stdout") + << QString::fromLatin1("Sometext") << OutputParserTester::STDOUT + << QString::fromLatin1("Sometext") << QString() + << QList<ProjectExplorer::Task>() + << QString(); + QTest::newRow("pass-through stderr") + << QString::fromLatin1("Sometext") << OutputParserTester::STDERR + << QString() << QString::fromLatin1("Sometext") + << QList<ProjectExplorer::Task>() + << QString(); +} + +void Qt4ProjectManagerPlugin::testAbldOutputParsers() +{ + OutputParserTester testbench; + testbench.appendOutputParser(new AbldParser); + QFETCH(QString, input); + QFETCH(OutputParserTester::Channel, inputChannel); + QFETCH(QList<Task>, tasks); + QFETCH(QString, childStdOutLines); + QFETCH(QString, childStdErrLines); + QFETCH(QString, outputLines); + + testbench.testParsing(input, inputChannel, + tasks, childStdOutLines, childStdErrLines, + outputLines); +} +#endif diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.pro b/src/plugins/qt4projectmanager/qt4projectmanager.pro index eb3b98f9893..b78f585a998 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanager.pro +++ b/src/plugins/qt4projectmanager/qt4projectmanager.pro @@ -27,7 +27,6 @@ HEADERS += qt4projectmanagerplugin.h \ wizards/modulespage.h \ wizards/filespage.h \ wizards/qtwizard.h \ - wizards/targetspage.h \ wizards/targetsetuppage.h \ qt4projectmanagerconstants.h \ makestep.h \ @@ -69,7 +68,6 @@ SOURCES += qt4projectmanagerplugin.cpp \ wizards/modulespage.cpp \ wizards/filespage.cpp \ wizards/qtwizard.cpp \ - wizards/targetspage.cpp \ wizards/targetsetuppage.cpp \ makestep.cpp \ qmakestep.cpp \ diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp index 096356267cd..674fb048559 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp +++ b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp @@ -266,11 +266,6 @@ void Qt4ProjectManagerPlugin::testBasicProjectLoading() QVERIFY(qt4project->rootProjectNode()->projectType() == ApplicationTemplate); QVERIFY(m_projectExplorer->currentProject() != 0); } - -void Qt4ProjectManagerPlugin::testNotYetImplemented() -{ - QCOMPARE(1+1, 2); -} #endif Q_EXPORT_PLUGIN(Qt4ProjectManagerPlugin) diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.h b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.h index 1fc0c9f43a5..b8af4ccf860 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.h +++ b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.h @@ -76,7 +76,9 @@ private slots: #ifdef WITH_TESTS void testBasicProjectLoading(); - void testNotYetImplemented(); + + void testAbldOutputParsers_data(); + void testAbldOutputParsers(); #endif private: -- GitLab