#include #include #include "numbers.h" #include "unity.h" void test_createNumbers() { unsigned int len = 6; unsigned int *array = createNumbers(len); TEST_ASSERT_NOT_NULL(array); unsigned int duplicate = getDuplicate(array, len); TEST_ASSERT_NOT_EQUAL(0, duplicate); int counter = 0; for (unsigned int i = 0; i < len; i++) { if (array[i] == duplicate) counter++; } TEST_ASSERT_EQUAL(2, counter); free(array); } void test_createNumbers_values() { unsigned int len = 6; unsigned int *array = createNumbers(len); TEST_ASSERT_NOT_NULL(array); for (unsigned int i = 0; i < len; i++) { TEST_ASSERT_TRUE(array[i] >= 1); TEST_ASSERT_TRUE(array[i] <= 2 * len); } free(array); } void test_getDuplicate() { unsigned int array[6] = {1, 2, 4, 4, 6, 7}; unsigned int duplicate = getDuplicate(array, 6); TEST_ASSERT_EQUAL_UINT(4, duplicate); } void setUp(void) { // Falls notwendig, kann hier Vorbereitungsarbeit gemacht werden } void tearDown(void) { // Hier kann Bereinigungsarbeit nach jedem Test durchgeführt werden } int main() { UNITY_BEGIN(); printf("\n============================\n Numbers tests\n============================\n"); RUN_TEST(test_createNumbers); RUN_TEST(test_createNumbers_values); RUN_TEST(test_getDuplicate); return UNITY_END(); }