Bug fix - ignored tests were incorrectly counted when not selected for running.

Ignored tests are now correctly skipped if not selected by test name or
by group name.
This commit is contained in:
Nimrod Zimerman
2015-01-13 22:48:36 +02:00
parent 6a944c2eb9
commit 9e9adc050c
3 changed files with 13 additions and 10 deletions

View File

@ -115,15 +115,18 @@ void UnityTestRunner(unityfunction* setup,
}
}
void UnityIgnoreTest(const char * printableName)
void UnityIgnoreTest(const char * printableName, const char * group, const char * name)
{
Unity.NumberOfTests++;
Unity.CurrentTestIgnored = 1;
if (!UnityFixture.Verbose)
UNITY_OUTPUT_CHAR('!');
else
UnityPrint(printableName);
UnityConcludeFixtureTest();
if (testSelected(name) && groupSelected(group))
{
Unity.NumberOfTests++;
Unity.CurrentTestIgnored = 1;
if (!UnityFixture.Verbose)
UNITY_OUTPUT_CHAR('!');
else
UnityPrint(printableName);
UnityConcludeFixtureTest();
}
}

View File

@ -45,7 +45,7 @@ int UnityMain(int argc, const char* argv[], void (*runAllTests)(void));
void TEST_##group##_##name##_run(void);\
void TEST_##group##_##name##_run(void)\
{\
UnityIgnoreTest("IGNORE_TEST(" #group ", " #name ")");\
UnityIgnoreTest("IGNORE_TEST(" #group ", " #name ")", TEST_GROUP_##group, #name);\
}\
void TEST_##group##_##name##_(void)

View File

@ -25,7 +25,7 @@ void UnityTestRunner(unityfunction * setup,
const char * name,
const char * file, int line);
void UnityIgnoreTest(const char * printableName);
void UnityIgnoreTest(const char * printableName, const char * group, const char * name);
void UnityMalloc_StartTest(void);
void UnityMalloc_EndTest(void);
int UnityFailureCount(void);