forked from qt-creator/qt-creator
AutoTest: Filter out test case summary as well
If results are filtered and the filtering results in omitting all entries of a test case filter out the test case as well. Change-Id: Icd3b18566ed45a68b2ee630a2f13be80257f6b26 Reviewed-by: David Schulz <david.schulz@theqtcompany.com> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -336,7 +336,29 @@ bool TestResultFilterModel::filterAcceptsRow(int sourceRow, const QModelIndex &s
|
|||||||
QModelIndex index = m_sourceModel->index(sourceRow, 0, sourceParent);
|
QModelIndex index = m_sourceModel->index(sourceRow, 0, sourceParent);
|
||||||
if (!index.isValid())
|
if (!index.isValid())
|
||||||
return false;
|
return false;
|
||||||
return m_enabled.contains(m_sourceModel->testResult(index)->result());
|
Result::Type resultType = m_sourceModel->testResult(index)->result();
|
||||||
|
switch (resultType) {
|
||||||
|
case Result::MessageTestCaseSuccess:
|
||||||
|
return m_enabled.contains(Result::Pass);
|
||||||
|
case Result::MessageTestCaseFail:
|
||||||
|
case Result::MessageTestCaseWarn:
|
||||||
|
return acceptTestCaseResult(index);
|
||||||
|
default:
|
||||||
|
return m_enabled.contains(resultType);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TestResultFilterModel::acceptTestCaseResult(const QModelIndex &index) const
|
||||||
|
{
|
||||||
|
Utils::TreeItem *item = m_sourceModel->itemForIndex(index);
|
||||||
|
QTC_ASSERT(item, return false);
|
||||||
|
|
||||||
|
for (const Utils::TreeItem *child : item->children()) {
|
||||||
|
const TestResultItem *resultItem = static_cast<const TestResultItem *>(child);
|
||||||
|
if (m_enabled.contains(resultItem->testResult()->result()))
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ protected:
|
|||||||
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
|
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
bool acceptTestCaseResult(const QModelIndex &index) const;
|
||||||
TestResultModel *m_sourceModel;
|
TestResultModel *m_sourceModel;
|
||||||
QSet<Result::Type> m_enabled;
|
QSet<Result::Type> m_enabled;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user