59 lines
1.3 KiB
C
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;
|
|
}
|