// TestRun.c #include <CUnit/CUnit.h> #include <CUnit/Basic.h> #include <CUnit/Console.h> #include <CUnit/CUCurses.h> #include "module.h" void test_add1(void){ CU_ASSERT_EQUAL(add(1,2),3); } void test_add2(void){ CU_ASSERT_NOT_EQUAL(add(1,2),4); } void test_sub1(void){ CU_ASSERT_EQUAL(sub(1,2),-1); } void test_sub2(void){ CU_ASSERT_NOT_EQUAL(sub(1,2),0); } CU_TestInfo testcase1[] = { {"test_for_add1:",test_add1}, {"test_for_add2:",test_add2}, CU_TEST_INFO_NULL }; CU_TestInfo testcase2[] = { {"test_for_sub1:",test_sub1}, {"test_for_sub2:",test_sub2}, CU_TEST_INFO_NULL }; int suite_init(void){ return 0; } int suite_cleanup(void){ return 0; } CU_SuiteInfo suites[] = { {"testSuite1",suite_init,suite_cleanup,testcase1}, {"testsuite2",suite_init,suite_cleanup,testcase2}, CU_SUITE_INFO_NULL }; int main(int argc, char * argv[]) { if(CU_initialize_registry()){ fprintf(stderr, " Initialization of Test Registry failed. "); return CU_get_error(); }else{ if(CUE_SUCCESS != CU_register_suites(suites)) return CU_get_error(); //**** Automated Mode ***************** CU_set_output_filename("ModuleTest"); CU_list_tests_to_file(); CU_automated_run_tests(); //************************************/ /***** Basice Mode ******************* CU_basic_set_mode(CU_BRM_VERBOSE); CU_basic_run_tests(); //************************************/ /*****Console Mode ******************** CU_console_run_tests(); //************************************/ /*****Curse Mode ******************** CU_curses_run_tests(); //*********************************/ CU_cleanup_registry(); return CU_get_error(); } } // Makefile INC=-I/local/local/include LIB=-L/local/local/lib all: module.c TestRun.c gcc $^ -o TestRun $(INC) $(LIB) -lcunit -lcurses -static clean: rm TestRun |