static void all_complete_message_handler(const CU_pFailureRecord pFailure) { #ifdef HAVE_CU_GET_SUITE char * results = CU_get_run_results_string(); bc_tester_printf(bc_printf_verbosity_info,"\n%s",results); CU_FREE(results); #endif }
void test_CU_malloc(void) { void* ptr1 = NULL; void* ptr2 = malloc(sizeof(int)); unsigned int n2 = test_cunit_get_n_memevents(ptr2); /* test allocation failure */ test_cunit_deactivate_malloc(); ptr1 = CU_MALLOC(sizeof(int)); TEST(NULL == ptr1); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); test_cunit_activate_malloc(); /* normal allocation */ ptr1 = CU_MALLOC(sizeof(int)); TEST_FATAL(NULL != ptr1); TEST(test_cunit_get_n_allocations(ptr1) != test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); CU_FREE(ptr1); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); TEST(n2 == test_cunit_get_n_memevents(ptr2)); free(ptr2); }
void test_CU_realloc(void) { void* ptr1 = CU_MALLOC(sizeof(int)); void* ptr2 = malloc(sizeof(int)); void* ptr3; void* ptr4; unsigned int n2 = test_cunit_get_n_memevents(ptr2); /* test allocation failure */ test_cunit_deactivate_malloc(); ptr1 = CU_REALLOC(ptr1, sizeof(long int)); TEST(NULL == ptr1); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); test_cunit_activate_malloc(); /* normal allocation */ ptr3 = CU_MALLOC(sizeof(int)); TEST_FATAL(NULL != ptr3); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); TEST(test_cunit_get_n_allocations(ptr3) != test_cunit_get_n_deallocations(ptr3)); ptr4 = CU_REALLOC(ptr3, sizeof(long int)); TEST_FATAL(NULL != ptr4); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); if (ptr3 != ptr4) TEST(test_cunit_get_n_allocations(ptr3) == test_cunit_get_n_deallocations(ptr3)); TEST(test_cunit_get_n_allocations(ptr4) != test_cunit_get_n_deallocations(ptr4)); CU_FREE(ptr4); TEST(test_cunit_get_n_allocations(ptr1) == test_cunit_get_n_deallocations(ptr1)); TEST(test_cunit_get_n_allocations(ptr2) == test_cunit_get_n_deallocations(ptr2)); TEST(test_cunit_get_n_allocations(ptr3) == test_cunit_get_n_deallocations(ptr3)); TEST(test_cunit_get_n_allocations(ptr4) == test_cunit_get_n_deallocations(ptr4)); TEST(n2 == test_cunit_get_n_memevents(ptr2)); free(ptr2); }