#include #include #include #include #include "unity.h" #include "numbers.h" void test_ArrayIsCreatedAndNotNull(void){ size_t len = 15; int *testArray = createNumbers(len); TEST_ASSERT_NOT_NULL(testArray); //If array hasnt been created at all free(testArray); } void test_getDouplicateReturnsDouplicateNumber(void){ unsigned int testArray[8] = {1, 2, 3, 3, 4, 5, 6, 7}; unsigned int testValue = getDuplicate(testArray, 8); TEST_ASSERT_EQUAL(3, testValue); } void test_getDouplicateReturnsZeroWhenThereIsNoDuplicate(void){ unsigned int testArray[8] = {1, 2, 3, 4, 5, 6, 7, 8}; unsigned int testValue = getDuplicate(testArray, 8); TEST_ASSERT_EQUAL(0, testValue); } void test_getDouplicateReturnsZeroWhenThereAreMultipleDuplicates(void){ unsigned int testArray[8] = {1, 3, 3, 4, 5, 6, 7, 7}; unsigned int testValue = getDuplicate(testArray, 8); TEST_ASSERT_EQUAL(0, testValue); } void test_CreateNumbersCreatesDuplicatein2LenArray(void){ unsigned int *testArray = createNumbers(2); unsigned int testValue = getDuplicate(testArray, 2); if(!testValue) testValue = 0; else testValue = 1; TEST_ASSERT_EQUAL(1, testValue); } void setUp(void){} void tearDown(void){} int main(){ UNITY_BEGIN(); printf("\n============================\nNumbers tests\n============================\n"); RUN_TEST(test_ArrayIsCreatedAndNotNull); RUN_TEST(test_CreateNumbersCreatesDuplicatein2LenArray); RUN_TEST(test_getDouplicateReturnsDouplicateNumber); RUN_TEST(test_getDouplicateReturnsZeroWhenThereIsNoDuplicate); RUN_TEST(test_getDouplicateReturnsZeroWhenThereAreMultipleDuplicates); return UNITY_END(); }