Testlib: Fix cleanupTestCase not called when last test blacklisted

Change-Id: I23810b4bd086c393325e56f7779fe7f7f01e76cf
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
This commit is contained in:
Rainer Keller 2015-02-27 15:53:27 +01:00
parent 10126b37d2
commit c6f5cffcc0

View File

@ -2057,6 +2057,7 @@ static bool qInvokeTestMethod(const char *slotName, const char *data=0)
/* For each entry in the data table, do: */
do {
QTestResult::setSkipCurrentTest(false);
QTestResult::setBlacklistCurrentTest(false);
if (!data || !qstrcmp(data, table.testData(curDataIndex)->dataTag())) {
foundFunction = true;
@ -2088,6 +2089,7 @@ static bool qInvokeTestMethod(const char *slotName, const char *data=0)
QTestResult::finishedCurrentTestFunction();
QTestResult::setSkipCurrentTest(false);
QTestResult::setBlacklistCurrentTest(false);
QTestResult::setCurrentTestData(0);
delete[] slot;
@ -2381,6 +2383,7 @@ static void qInvokeTestMethods(QObject *testObject)
}
QTestResult::setSkipCurrentTest(false);
QTestResult::setBlacklistCurrentTest(false);
QTestResult::setCurrentTestFunction("cleanupTestCase");
invokeMethod(testObject, "cleanupTestCase()");
QTestResult::finishedCurrentTestData();