Info2-Pr-Doble-Spiel/test_numbers.c
2025-12-03 16:35:34 +01:00

59 lines
1.3 KiB
C

#include "numbers.h"
#include <stdio.h>
#include <stdlib.h>
void generateNumbersFail()
{
unsigned int* result = createNumbers(2);
if(result == NULL)
printf("PASS ");
else
printf("FAIL ");
printf("generateNumbersFailsOnTooSmallLength\n");
}
void generateNumbersSuccess()
{
unsigned int* result = createNumbers(10);
int duplicates = 0;
qsort(result, 10, sizeof(unsigned int), compareFct);
for(int i = 0; i < 9; i++)
{
if(result[i]==result[i+1])
{
duplicates++;
}
}
if(duplicates == 1)
printf("PASS ");
else
printf("FAIL ");
printf("generateNumbersSuccessful\n");
}
void duplicateErrorTest(){
unsigned int result = getDuplicate(NULL,10);
if(result == 0)
printf("PASS ");
else
printf("FAIL ");
printf("duplicateReturnsZeroOnErrors\n");
}
void duplicateNormalTest()
{
unsigned int numbers[10]={2,3,4,5,6,7,2,9,10};
unsigned int result = getDuplicate(numbers,10);
if(result == 2)
printf("PASS ");
else
printf("FAIL ");
printf("duplicateReturnsCorrectDuplicate\n");
}
int main()
{
generateNumbersFail();
generateNumbersSuccess();
duplicateNormalTest();
duplicateErrorTest();
return 0;
}