100% code coverage for Unity Fixture

Add tests for uncovered lines
This commit is contained in:
jsalling
2016-02-15 23:58:27 -06:00
parent cc0f58cfbc
commit 94fc68942b
4 changed files with 36 additions and 1 deletions

View File

@ -75,5 +75,6 @@ CFLAGS += -Wstrict-prototypes
CFLAGS += -Wswitch-default
CFLAGS += -Wundef
CFLAGS += -Wno-error=undef # Warning only, this should not stop the build
CFLAGS += -Wunreachable-code
CFLAGS += -Wunused
CFLAGS += -fstrict-aliasing

View File

@ -136,6 +136,22 @@ TEST(UnityFixture, FreeNULLSafety)
free(NULL);
}
TEST(UnityFixture, ConcludeTestIncrementsFailCount)
{
_U_UINT savedFails = Unity.TestFailures;
_U_UINT savedIgnores = Unity.TestIgnores;
UnityOutputCharSpy_Enable(1);
Unity.CurrentTestFailed = 1;
UnityConcludeFixtureTest(); // Resets TestFailed for this test to pass
Unity.CurrentTestIgnored = 1;
UnityConcludeFixtureTest(); // Resets TestIgnored
UnityOutputCharSpy_Enable(0);
TEST_ASSERT_EQUAL(savedFails + 1, Unity.TestFailures);
TEST_ASSERT_EQUAL(savedIgnores + 1, Unity.TestIgnores);
Unity.TestFailures = savedFails;
Unity.TestIgnores = savedIgnores;
}
//------------------------------------------------------------
TEST_GROUP(UnityCommandOptions);
@ -276,6 +292,21 @@ TEST(UnityCommandOptions, UnknownCommandIsIgnored)
TEST_ASSERT_EQUAL(98, UnityFixture.RepeatCount);
}
TEST(UnityCommandOptions, GroupOrNameFilterWithoutStringFails)
{
TEST_ASSERT_EQUAL(1, UnityGetCommandLineOptions(3, unknownCommand));
TEST_ASSERT_EQUAL(1, UnityGetCommandLineOptions(5, unknownCommand));
TEST_ASSERT_EQUAL(1, UnityMain(3, unknownCommand, NULL));
}
TEST(UnityCommandOptions, GroupFilterReallyFilters)
{
_U_UINT saved = Unity.NumberOfTests;
TEST_ASSERT_EQUAL(0, UnityGetCommandLineOptions(4, unknownCommand));
UnityIgnoreTest(NULL, "non-matching", NULL);
TEST_ASSERT_EQUAL(saved, Unity.NumberOfTests);
}
IGNORE_TEST(UnityCommandOptions, TestShouldBeIgnored)
{
TEST_FAIL_MESSAGE("This test should not run!");

View File

@ -19,6 +19,7 @@ TEST_GROUP_RUNNER(UnityFixture)
RUN_TEST_CASE(UnityFixture, CallocFillsWithZero);
RUN_TEST_CASE(UnityFixture, PointerSet);
RUN_TEST_CASE(UnityFixture, FreeNULLSafety);
RUN_TEST_CASE(UnityFixture, ConcludeTestIncrementsFailCount);
}
TEST_GROUP_RUNNER(UnityCommandOptions)
@ -32,6 +33,8 @@ TEST_GROUP_RUNNER(UnityCommandOptions)
RUN_TEST_CASE(UnityCommandOptions, MultipleOptions);
RUN_TEST_CASE(UnityCommandOptions, MultipleOptionsDashRNotLastAndNoValueSpecified);
RUN_TEST_CASE(UnityCommandOptions, UnknownCommandIsIgnored);
RUN_TEST_CASE(UnityCommandOptions, GroupOrNameFilterWithoutStringFails);
RUN_TEST_CASE(UnityCommandOptions, GroupFilterReallyFilters);
RUN_TEST_CASE(UnityCommandOptions, TestShouldBeIgnored);
}

View File

@ -19,7 +19,7 @@ static int spy_enable;
void UnityOutputCharSpy_Create(int s)
{
size = s;
size = (s > 0) ? s : 0;
count = 0;
spy_enable = 0;
buffer = malloc((size_t)size);