70 lines
1.4 KiB
C
70 lines
1.4 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#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();
|
|
} |