summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/xcodebuildparser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/projectexplorer/xcodebuildparser.cpp')
-rw-r--r--src/plugins/projectexplorer/xcodebuildparser.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/projectexplorer/xcodebuildparser.cpp b/src/plugins/projectexplorer/xcodebuildparser.cpp
index 4d6e280a95..36040aa5b0 100644
--- a/src/plugins/projectexplorer/xcodebuildparser.cpp
+++ b/src/plugins/projectexplorer/xcodebuildparser.cpp
@@ -122,6 +122,11 @@ XcodebuildParserTester::XcodebuildParserTester(XcodebuildParser *p, QObject *par
parser(p)
{ }
+void XcodebuildParserTester::onAboutToDeleteParser()
+{
+ QCOMPARE(parser->m_xcodeBuildParserState, expectedFinalState);
+}
+
void ProjectExplorerPlugin::testXcodebuildParserParsing_data()
{
QTest::addColumn<ProjectExplorer::XcodebuildParser::XcodebuildStatus>("initialStatus");
@@ -243,6 +248,8 @@ void ProjectExplorerPlugin::testXcodebuildParserParsing()
XcodebuildParser *childParser = new XcodebuildParser;
XcodebuildParserTester *tester = new XcodebuildParserTester(childParser);
+ connect(&testbench, SIGNAL(aboutToDeleteParser()), tester, SLOT(onAboutToDeleteParser()));
+
testbench.appendOutputParser(childParser);
QFETCH(ProjectExplorer::XcodebuildParser::XcodebuildStatus, initialStatus);
QFETCH(QString, input);
@@ -253,11 +260,11 @@ void ProjectExplorerPlugin::testXcodebuildParserParsing()
QFETCH(QString, outputLines);
QFETCH(ProjectExplorer::XcodebuildParser::XcodebuildStatus, finalStatus);
+ tester->expectedFinalState = finalStatus;
childParser->m_xcodeBuildParserState = initialStatus;
testbench.testParsing(input, inputChannel,
tasks, childStdOutLines, childStdErrLines,
outputLines);
- QCOMPARE(childParser->m_xcodeBuildParserState, finalStatus);
delete tester;
}