diff --git a/src/plugins/autotest/gtest/gtestoutputreader.cpp b/src/plugins/autotest/gtest/gtestoutputreader.cpp index bbeb54e3cae..aaa642e215c 100644 --- a/src/plugins/autotest/gtest/gtestoutputreader.cpp +++ b/src/plugins/autotest/gtest/gtestoutputreader.cpp @@ -92,12 +92,7 @@ void GTestOutputReader::processOutputLine(const QByteArray &outputLineWithNewLin reportResult(testResult); m_description.clear(); } else if (disabledTests.exactMatch(line)) { - TestResultPtr testResult = TestResultPtr(new GTestResult(m_projectFile)); - testResult->setResult(Result::MessageDisabledTests); - int disabled = disabledTests.cap(1).toInt(); - testResult->setDescription(tr("You have %n disabled test(s).", nullptr, disabled)); - testResult->setLine(disabled); // misuse line property to hold number of disabled - reportResult(testResult); + m_disabled = disabledTests.cap(1).toInt(); m_description.clear(); } return; diff --git a/src/plugins/autotest/testoutputreader.h b/src/plugins/autotest/testoutputreader.h index 7c1f7d0f137..6d1db603697 100644 --- a/src/plugins/autotest/testoutputreader.h +++ b/src/plugins/autotest/testoutputreader.h @@ -47,6 +47,7 @@ public: void reportCrash(); void createAndReportResult(const QString &message, Result::Type type); bool hadValidOutput() const { return m_hadValidOutput; } + int disabledTests() const { return m_disabled; } void setId(const QString &id) { m_id = id; } QString id() const { return m_id; } @@ -63,6 +64,7 @@ protected: QProcess *m_testApplication; // not owned QString m_buildDir; QString m_id; + int m_disabled = -1; private: bool m_hadValidOutput = false; }; diff --git a/src/plugins/autotest/testresult.h b/src/plugins/autotest/testresult.h index a1e1d2e7bf1..39f6cb7de70 100644 --- a/src/plugins/autotest/testresult.h +++ b/src/plugins/autotest/testresult.h @@ -57,7 +57,6 @@ enum Type { MessageLocation, MessageInternal, INTERNAL_MESSAGES_BEGIN = MessageInternal, - MessageDisabledTests, MessageTestCaseStart, MessageTestCaseSuccess, MessageTestCaseSuccessWarn, diff --git a/src/plugins/autotest/testresultmodel.cpp b/src/plugins/autotest/testresultmodel.cpp index c5304fed86f..c7264ffa32f 100644 --- a/src/plugins/autotest/testresultmodel.cpp +++ b/src/plugins/autotest/testresultmodel.cpp @@ -224,12 +224,9 @@ void TestResultModel::addTestResult(const TestResultPtr &testResult, bool autoEx return; } - if (testResult->result() == Result::MessageDisabledTests) - m_disabled += testResult->line(); m_testResultCount[testResult->result()]++; TestResultItem *newItem = new TestResultItem(testResult); - TestResultItem *root = nullptr; if (AutotestPlugin::settings()->displayApplication) { const QString application = testResult->id(); diff --git a/src/plugins/autotest/testresultmodel.h b/src/plugins/autotest/testresultmodel.h index 0366e8e0895..322b56dc015 100644 --- a/src/plugins/autotest/testresultmodel.h +++ b/src/plugins/autotest/testresultmodel.h @@ -69,6 +69,7 @@ public: int resultTypeCount(Result::Type type) const { return m_testResultCount.value(type, 0); } int disabledTests() const { return m_disabled; } + void raiseDisabledTests(int amount) { m_disabled += amount; } private: void recalculateMaxWidthOfFileName(const QFont &font); diff --git a/src/plugins/autotest/testresultspane.cpp b/src/plugins/autotest/testresultspane.cpp index 1f10eac7d46..caae5da406b 100644 --- a/src/plugins/autotest/testresultspane.cpp +++ b/src/plugins/autotest/testresultspane.cpp @@ -157,6 +157,8 @@ TestResultsPane::TestResultsPane(QObject *parent) : this, &TestResultsPane::onTestRunFinished); connect(TestRunner::instance(), &TestRunner::testResultReady, this, &TestResultsPane::addTestResult); + connect(TestRunner::instance(), &TestRunner::hadDisabledTests, + m_model, &TestResultModel::raiseDisabledTests); } void TestResultsPane::createToolButtons() diff --git a/src/plugins/autotest/testrunner.cpp b/src/plugins/autotest/testrunner.cpp index 45f7c2c52a4..69f3abdcdf6 100644 --- a/src/plugins/autotest/testrunner.cpp +++ b/src/plugins/autotest/testrunner.cpp @@ -273,6 +273,9 @@ void TestRunner::onProcessFinished() } } } + const int disabled = m_currentOutputReader->disabledTests(); + if (disabled > 0) + emit hadDisabledTests(disabled); resetInternalPointers(); if (!m_fakeFutureInterface) { diff --git a/src/plugins/autotest/testrunner.h b/src/plugins/autotest/testrunner.h index b56d7974016..0e7c74ebd24 100644 --- a/src/plugins/autotest/testrunner.h +++ b/src/plugins/autotest/testrunner.h @@ -70,6 +70,7 @@ signals: void testRunFinished(); void requestStopTestRun(); void testResultReady(const TestResultPtr &result); + void hadDisabledTests(int disabled); private: void buildProject(ProjectExplorer::Project *project);