📄 testdb.c
字号:
TEST(4 == pReg->uiNumberOfTests); TEST(3 == pSuite1->uiNumberOfTests); TEST(1 == pSuite2->uiNumberOfTests); TEST(pSuite1->pTest == pTest1); TEST(pSuite2->pTest == pTest2); TEST(!strcmp("test1", pTest1->pName)); TEST(pTest1->pNext == pTest3); TEST(pTest1->pJumpBuf == NULL); TEST(pTest1->pTestFunc == test1); TEST(CU_get_test_by_name("test1", pSuite1) == pTest1); TEST(CU_get_test_by_name("test1", pSuite2) == NULL); TEST(!strcmp("test2", pTest2->pName)); TEST(pTest2->pNext == NULL); TEST(pTest2->pJumpBuf == NULL); TEST(pTest2->pTestFunc == test1); TEST(CU_get_test_by_name("test2", pSuite1) == NULL); TEST(CU_get_test_by_name("test2", pSuite2) == pTest2); TEST(!strcmp("test3", pTest3->pName)); TEST(pTest3->pNext == pTest4); TEST(pTest3->pJumpBuf == NULL); TEST(pTest3->pTestFunc == test1); TEST(CU_get_test_by_name("test3", pSuite1) == pTest3); TEST(CU_get_test_by_name("test3", pSuite2) == NULL); TEST(!strcmp("test4", pTest4->pName)); TEST(pTest4->pNext == NULL); TEST(pTest4->pJumpBuf == NULL); TEST(pTest4->pTestFunc == test1); TEST(CU_get_test_by_name("test4", pSuite1) == pTest4); TEST(CU_get_test_by_name("test4", pSuite2) == NULL); TEST(0 != test_cunit_get_n_memevents(pSuite1)); TEST(0 != test_cunit_get_n_memevents(pSuite2)); TEST(0 != test_cunit_get_n_memevents(pTest1)); TEST(0 != test_cunit_get_n_memevents(pTest2)); TEST(0 != test_cunit_get_n_memevents(pTest3)); TEST(0 != test_cunit_get_n_memevents(pTest4)); TEST(test_cunit_get_n_allocations(pSuite1) != test_cunit_get_n_deallocations(pSuite1)); TEST(test_cunit_get_n_allocations(pSuite2) != test_cunit_get_n_deallocations(pSuite2)); TEST(test_cunit_get_n_allocations(pTest1) != test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pTest2) != test_cunit_get_n_deallocations(pTest2)); TEST(test_cunit_get_n_allocations(pTest3) != test_cunit_get_n_deallocations(pTest3)); TEST(test_cunit_get_n_allocations(pTest4) != test_cunit_get_n_deallocations(pTest4)); CU_cleanup_registry(); TEST(test_cunit_get_n_allocations(pSuite1) == test_cunit_get_n_deallocations(pSuite1)); TEST(test_cunit_get_n_allocations(pSuite2) == test_cunit_get_n_deallocations(pSuite2)); TEST(test_cunit_get_n_allocations(pTest1) == test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pTest2) == test_cunit_get_n_deallocations(pTest2)); TEST(test_cunit_get_n_allocations(pTest3) == test_cunit_get_n_deallocations(pTest3)); TEST(test_cunit_get_n_allocations(pTest4) == test_cunit_get_n_deallocations(pTest4));}/*--------------------------------------------------*/static void test_CU_get_registry(void){ CU_cleanup_registry(); TEST(NULL == CU_get_registry()); CU_initialize_registry(); TEST(NULL != CU_get_registry()); TEST(f_pTestRegistry == CU_get_registry()); CU_cleanup_registry();}/*--------------------------------------------------*/static void test_CU_set_registry(void){ CU_pTestRegistry pReg1 = NULL; CU_pTestRegistry pReg2 = NULL; CU_pSuite pSuite1 = NULL; CU_pSuite pSuite2 = NULL; CU_initialize_registry(); pSuite1 = CU_add_suite("suite1", NULL, NULL); pSuite2 = CU_add_suite("suite2", NULL, NULL); CU_add_test(pSuite1, "test1", test1); CU_add_test(pSuite1, "test2", test1); CU_add_test(pSuite2, "test1", test1); CU_add_test(pSuite2, "test2", test1); pReg1 = CU_get_registry(); TEST(pReg1->pSuite == pSuite1); TEST(pReg1->uiNumberOfSuites == 2); TEST(pReg1->uiNumberOfTests == 4); TEST(0 < test_cunit_get_n_memevents(pReg1)); TEST(test_cunit_get_n_allocations(pReg1) != test_cunit_get_n_deallocations(pReg1)); CU_set_registry(NULL); TEST(test_cunit_get_n_allocations(pReg1) != test_cunit_get_n_deallocations(pReg1)); CU_cleanup_registry(); TEST(test_cunit_get_n_allocations(pReg1) != test_cunit_get_n_deallocations(pReg1)); pReg2 = CU_create_new_registry(); CU_set_registry(pReg2); TEST(pReg1->pSuite == pSuite1); TEST(pReg1->uiNumberOfSuites == 2); TEST(pReg1->uiNumberOfTests == 4); TEST(test_cunit_get_n_allocations(pReg1) != test_cunit_get_n_deallocations(pReg1)); TEST(CU_get_registry()->pSuite == NULL); TEST(CU_get_registry()->uiNumberOfSuites == 0); TEST(CU_get_registry()->uiNumberOfTests == 0); TEST(0 < test_cunit_get_n_memevents(pReg2)); TEST(test_cunit_get_n_allocations(pReg2) != test_cunit_get_n_deallocations(pReg2)); CU_cleanup_registry(); TEST(pReg1->pSuite == pSuite1); TEST(pReg1->uiNumberOfSuites == 2); TEST(pReg1->uiNumberOfTests == 4); TEST(test_cunit_get_n_allocations(pReg1) != test_cunit_get_n_deallocations(pReg1)); TEST(test_cunit_get_n_allocations(pReg2) == test_cunit_get_n_deallocations(pReg2)); CU_set_registry(pReg1); CU_cleanup_registry(); TEST(test_cunit_get_n_allocations(pReg1) == test_cunit_get_n_deallocations(pReg1));}/*--------------------------------------------------*/static void test_CU_create_new_registry(void){ CU_pTestRegistry pReg = NULL; CU_pTestRegistry pRegOld = NULL; CU_cleanup_registry(); pReg = CU_create_new_registry(); TEST(NULL != pReg); TEST(0 < test_cunit_get_n_memevents(pReg)); TEST(test_cunit_get_n_allocations(pReg) != test_cunit_get_n_deallocations(pReg)); TEST(pReg->pSuite == NULL); TEST(pReg->uiNumberOfSuites == 0); TEST(pReg->uiNumberOfTests == 0); CU_cleanup_registry(); TEST(test_cunit_get_n_allocations(pReg) != test_cunit_get_n_deallocations(pReg)); pRegOld = pReg; CU_destroy_existing_registry(&pReg); TEST(test_cunit_get_n_allocations(pRegOld) == test_cunit_get_n_deallocations(pRegOld)); TEST(NULL == pReg);}/*--------------------------------------------------*/static void test_CU_destroy_existing_registry(void){ /* covered by test_CU_create_new_registry() */}/*--------------------------------------------------*/static void test_CU_get_suite_by_name(void){ /* covered by test_CU_add_suite() */}/*--------------------------------------------------*/static void test_CU_get_test_by_name(void){ /* covered by test_CU_add_test() */}/*--------------------------------------------------*/static void test_cleanup_test_registry(void){ CU_pSuite pSuite1 = NULL; CU_pSuite pSuite2 = NULL; CU_pTest pTest1 = NULL; CU_pTest pTest2 = NULL; CU_pTest pTest3 = NULL; CU_pTest pTest4 = NULL; CU_pTestRegistry pReg = CU_create_new_registry(); TEST_FATAL(NULL != pReg); TEST(0 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); /* create tests to register */ pTest1 = create_test("test1", test1); pTest2 = create_test("test2", NULL); pTest3 = create_test("test3", test1); pTest4 = create_test("", NULL); /* create suites to hold tests */ pSuite1 = create_suite("suite1", NULL, NULL); pSuite2 = create_suite("suite2", sfunc1, sfunc1); insert_suite(pReg, pSuite1); insert_suite(pReg, pSuite2); insert_test(pSuite1, pTest1); insert_test(pSuite1, pTest2); insert_test(pSuite1, pTest3); insert_test(pSuite2, pTest4); TEST(2 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); /* not managed in primitive functions */ TEST(3 == pSuite1->uiNumberOfTests); TEST(1 == pSuite2->uiNumberOfTests); TEST(pSuite1->pTest == pTest1); TEST(pSuite2->pTest == pTest4); TEST(pTest1->pNext == pTest2); TEST(pTest1->pPrev == NULL); TEST(pTest2->pNext == pTest3); TEST(pTest2->pPrev == pTest1); TEST(pTest3->pNext == NULL); TEST(pTest3->pPrev == pTest2); TEST(pTest4->pNext == NULL); TEST(pTest4->pPrev == NULL); TEST(0 != test_cunit_get_n_memevents(pReg)); TEST(0 != test_cunit_get_n_memevents(pSuite1)); TEST(0 != test_cunit_get_n_memevents(pSuite2)); TEST(0 != test_cunit_get_n_memevents(pTest1)); TEST(0 != test_cunit_get_n_memevents(pTest2)); TEST(0 != test_cunit_get_n_memevents(pTest3)); TEST(0 != test_cunit_get_n_memevents(pTest4)); TEST(test_cunit_get_n_allocations(pReg) != test_cunit_get_n_deallocations(pReg)); TEST(test_cunit_get_n_allocations(pSuite1) != test_cunit_get_n_deallocations(pSuite1)); TEST(test_cunit_get_n_allocations(pSuite2) != test_cunit_get_n_deallocations(pSuite2)); TEST(test_cunit_get_n_allocations(pTest1) != test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pTest2) != test_cunit_get_n_deallocations(pTest2)); TEST(test_cunit_get_n_allocations(pTest3) != test_cunit_get_n_deallocations(pTest3)); TEST(test_cunit_get_n_allocations(pTest4) != test_cunit_get_n_deallocations(pTest4)); cleanup_test_registry(pReg); CU_FREE(pReg); TEST(test_cunit_get_n_allocations(pReg) == test_cunit_get_n_deallocations(pReg)); TEST(test_cunit_get_n_allocations(pSuite1) == test_cunit_get_n_deallocations(pSuite1)); TEST(test_cunit_get_n_allocations(pSuite2) == test_cunit_get_n_deallocations(pSuite2)); TEST(test_cunit_get_n_allocations(pTest1) == test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pTest2) == test_cunit_get_n_deallocations(pTest2)); TEST(test_cunit_get_n_allocations(pTest3) == test_cunit_get_n_deallocations(pTest3)); TEST(test_cunit_get_n_allocations(pTest4) == test_cunit_get_n_deallocations(pTest4));}/*--------------------------------------------------*/static void test_create_suite(void){ CU_pSuite pSuite1 = NULL; CU_pSuite pSuite2 = NULL; CU_pSuite pSuite3 = NULL; CU_pSuite pSuite4 = NULL; /* error condition - memory allocation failure */ test_cunit_deactivate_malloc(); pSuite1 = create_suite("suite1", NULL, NULL); TEST(NULL == pSuite1); test_cunit_activate_malloc(); /* normal creation & cleanup */ pSuite1 = create_suite("suite1", NULL, NULL); TEST(NULL != pSuite1); TEST(!strcmp("suite1", pSuite1->pName)); TEST(pSuite1->pTest == NULL); /* no tests added yet */ TEST(pSuite1->uiNumberOfTests == 0); /* no tests added yet */ TEST(pSuite1->pInitializeFunc == NULL); /* no init function */ TEST(pSuite1->pCleanupFunc == NULL); /* no cleanup function */ TEST(pSuite1->pNext == NULL); /* no more suites added yet */ pSuite2 = create_suite("suite2", sfunc1, NULL); TEST(NULL != pSuite2); TEST(!strcmp("suite2", pSuite2->pName)); TEST(pSuite2->pTest == NULL); /* no tests added yet */ TEST(pSuite2->uiNumberOfTests == 0); /* no tests added yet */ TEST(pSuite2->pInitializeFunc == sfunc1); /* init function */ TEST(pSuite2->pCleanupFunc == NULL); /* no cleanup function */ TEST(pSuite2->pNext == NULL); /* no more suites added yet */ pSuite3 = create_suite("suite3", NULL, sfunc1); TEST(NULL != pSuite3); TEST(!strcmp("suite3", pSuite3->pName)); TEST(pSuite3->pTest == NULL); /* no tests added yet */ TEST(pSuite3->uiNumberOfTests == 0); /* no tests added yet */ TEST(pSuite3->pInitializeFunc == NULL); /* no init function */ TEST(pSuite3->pCleanupFunc == sfunc1); /* cleanup function */ TEST(pSuite3->pNext == NULL); /* no more suites added yet */ pSuite4 = create_suite("suite4", sfunc1, sfunc1); TEST(NULL != pSuite4); TEST(!strcmp("suite4", pSuite4->pName)); TEST(pSuite4->pTest == NULL); /* no tests added yet */ TEST(pSuite4->uiNumberOfTests == 0); /* no tests added yet */ TEST(pSuite4->pInitializeFunc == sfunc1); /* no init function */ TEST(pSuite4->pCleanupFunc == sfunc1); /* cleanup function */ TEST(pSuite4->pNext == NULL); /* no more suites added yet */ TEST(0 != test_cunit_get_n_memevents(pSuite1)); TEST(test_cunit_get_n_allocations(pSuite1) != test_cunit_get_n_deallocations(pSuite1)); cleanup_suite(pSuite1); CU_FREE(pSuite1); TEST(test_cunit_get_n_allocations(pSuite1) == test_cunit_get_n_deallocations(pSuite1)); TEST(0 != test_cunit_get_n_memevents(pSuite2)); TEST(test_cunit_get_n_allocations(pSuite2) != test_cunit_get_n_deallocations(pSuite2)); cleanup_suite(pSuite2); CU_FREE(pSuite2); TEST(test_cunit_get_n_allocations(pSuite2) == test_cunit_get_n_deallocations(pSuite2)); TEST(0 != test_cunit_get_n_memevents(pSuite3)); TEST(test_cunit_get_n_allocations(pSuite3) != test_cunit_get_n_deallocations(pSuite3)); cleanup_suite(pSuite3); CU_FREE(pSuite3); TEST(test_cunit_get_n_allocations(pSuite3) == test_cunit_get_n_deallocations(pSuite3)); TEST(0 != test_cunit_get_n_memevents(pSuite4)); TEST(test_cunit_get_n_allocations(pSuite4) != test_cunit_get_n_deallocations(pSuite4)); cleanup_suite(pSuite4); CU_FREE(pSuite4); TEST(test_cunit_get_n_allocations(pSuite4) == test_cunit_get_n_deallocations(pSuite4));}/*--------------------------------------------------*/static void test_cleanup_suite(void){ /* covered by test_create_suite() and test_create_test() */}/*--------------------------------------------------*/static void test_insert_suite(void){ CU_pSuite pSuite1 = NULL; CU_pSuite pSuite2 = NULL; CU_pSuite pSuite3 = NULL; CU_pSuite pSuite4 = NULL; CU_pTestRegistry pReg = CU_create_new_registry(); TEST_FATAL(NULL != pReg); TEST(0 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); TEST(NULL == pReg->pSuite); TEST(CU_FALSE == suite_exists(pReg, "suite1")); TEST(CU_FALSE == suite_exists(pReg, "suite2")); TEST(CU_FALSE == suite_exists(pReg, "suite3")); TEST(CU_FALSE == suite_exists(pReg, "suite4")); TEST(CU_FALSE == suite_exists(pReg, "suite5")); TEST(CU_FALSE == suite_exists(pReg, "")); /* normal creation & cleanup */ pSuite1 = create_suite("suite1", NULL, NULL); insert_suite(pReg, pSuite1); TEST(1 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); TEST(pReg->pSuite == pSuite1); TEST(pSuite1->pNext == NULL); TEST(CU_TRUE == suite_exists(pReg, "suite1")); TEST(CU_FALSE == suite_exists(pReg, "suite2")); TEST(CU_FALSE == suite_exists(pReg, "suite3")); TEST(CU_FALSE == suite_exists(pReg, "suite4")); TEST(CU_FALSE == suite_exists(pReg, "suite5")); TEST(CU_FALSE == suite_exists(pReg, "")); pSuite2 = create_suite("suite2", sfunc1, NULL); insert_suite(pReg, pSuite2); TEST(2 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); TEST(pReg->pSuite == pSuite1); TEST(pSuite1->pNext == pSuite2); TEST(pSuite2->pNext == NULL); TEST(CU_TRUE == suite_exists(pReg, "suite1")); TEST(CU_TRUE == suite_exists(pReg, "suite2"));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -