📄 testdb.c
字号:
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, "")); pSuite3 = create_suite("suite3", NULL, sfunc1); insert_suite(pReg, pSuite3); TEST(3 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); TEST(pReg->pSuite == pSuite1); TEST(pSuite1->pNext == pSuite2); TEST(pSuite2->pNext == pSuite3); TEST(pSuite3->pNext == NULL); TEST(CU_TRUE == suite_exists(pReg, "suite1")); TEST(CU_TRUE == suite_exists(pReg, "suite2")); TEST(CU_TRUE == suite_exists(pReg, "suite3")); TEST(CU_FALSE == suite_exists(pReg, "suite4")); TEST(CU_FALSE == suite_exists(pReg, "suite5")); TEST(CU_FALSE == suite_exists(pReg, "")); pSuite4 = create_suite("suite4", sfunc1, sfunc1); insert_suite(pReg, pSuite4); TEST(4 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); TEST(pReg->pSuite == pSuite1); TEST(pSuite1->pNext == pSuite2); TEST(pSuite2->pNext == pSuite3); TEST(pSuite3->pNext == pSuite4); TEST(pSuite4->pNext == NULL); TEST(CU_TRUE == suite_exists(pReg, "suite1")); TEST(CU_TRUE == suite_exists(pReg, "suite2")); TEST(CU_TRUE == suite_exists(pReg, "suite3")); TEST(CU_TRUE == suite_exists(pReg, "suite4")); TEST(CU_FALSE == suite_exists(pReg, "suite5")); TEST(CU_FALSE == suite_exists(pReg, "")); 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(pSuite3)); TEST(0 != test_cunit_get_n_memevents(pSuite4)); 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(pSuite3) != test_cunit_get_n_deallocations(pSuite3)); TEST(test_cunit_get_n_allocations(pSuite4) != test_cunit_get_n_deallocations(pSuite4)); cleanup_test_registry(pReg); 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, "")); 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(pSuite3) == test_cunit_get_n_deallocations(pSuite3)); TEST(test_cunit_get_n_allocations(pSuite4) == test_cunit_get_n_deallocations(pSuite4));}/*--------------------------------------------------*/static void test_create_test(void){ CU_pTest pTest1 = NULL; CU_pTest pTest2 = NULL; /* error condition - memory allocation failure */ test_cunit_deactivate_malloc(); pTest1 = create_test("test1", test1); test_cunit_activate_malloc(); TEST(NULL == pTest1); /* normal creation & cleanup */ pTest1 = create_test("test1", test1); TEST(NULL != pTest1); TEST(pTest1->pTestFunc == test1); TEST(!strcmp("test1", pTest1->pName)); TEST(pTest1->pNext == NULL); TEST(pTest1->pPrev == NULL); TEST(pTest1->pJumpBuf == NULL); pTest2= create_test("test2", NULL); TEST(NULL != pTest2); TEST(pTest2->pTestFunc == NULL); TEST(!strcmp("test2", pTest2->pName)); TEST(pTest2->pNext == NULL); TEST(pTest2->pPrev == NULL); TEST(pTest2->pJumpBuf == NULL); TEST(0 != test_cunit_get_n_memevents(pTest1)); TEST(0 != test_cunit_get_n_memevents(pTest2)); 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)); cleanup_test(pTest1); CU_FREE(pTest1); cleanup_test(pTest2); CU_FREE(pTest2); 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));}/*--------------------------------------------------*/static void test_insert_test(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; /* 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); TEST(CU_FALSE == test_exists(pSuite1, "test1")); TEST(CU_FALSE == test_exists(pSuite1, "test2")); TEST(CU_FALSE == test_exists(pSuite1, "test3")); TEST(CU_FALSE == test_exists(pSuite1, "test4")); TEST(CU_FALSE == test_exists(pSuite1, "")); TEST(CU_FALSE == test_exists(pSuite2, "test1")); TEST(CU_FALSE == test_exists(pSuite2, "test2")); TEST(CU_FALSE == test_exists(pSuite2, "test3")); TEST(CU_FALSE == test_exists(pSuite2, "test4")); TEST(CU_FALSE == test_exists(pSuite2, "")); insert_test(pSuite1, pTest1); insert_test(pSuite1, pTest2); insert_test(pSuite1, pTest3); insert_test(pSuite2, pTest4); TEST(CU_TRUE == test_exists(pSuite1, "test1")); TEST(CU_TRUE == test_exists(pSuite1, "test2")); TEST(CU_TRUE == test_exists(pSuite1, "test3")); TEST(CU_FALSE == test_exists(pSuite1, "test4")); TEST(CU_FALSE == test_exists(pSuite1, "")); TEST(CU_FALSE == test_exists(pSuite2, "test1")); TEST(CU_FALSE == test_exists(pSuite2, "test2")); TEST(CU_FALSE == test_exists(pSuite2, "test3")); TEST(CU_FALSE == test_exists(pSuite2, "test4")); TEST(CU_TRUE == test_exists(pSuite2, "")); 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(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)); cleanup_suite(pSuite1); TEST(CU_FALSE == test_exists(pSuite1, "test1")); TEST(CU_FALSE == test_exists(pSuite1, "test2")); TEST(CU_FALSE == test_exists(pSuite1, "test3")); TEST(CU_FALSE == test_exists(pSuite1, "test4")); TEST(CU_FALSE == test_exists(pSuite1, "")); TEST(CU_FALSE == test_exists(pSuite2, "test1")); TEST(CU_FALSE == test_exists(pSuite2, "test2")); TEST(CU_FALSE == test_exists(pSuite2, "test3")); TEST(CU_FALSE == test_exists(pSuite2, "test4")); TEST(CU_TRUE == test_exists(pSuite2, "")); cleanup_suite(pSuite2); TEST(CU_FALSE == test_exists(pSuite1, "test1")); TEST(CU_FALSE == test_exists(pSuite1, "test2")); TEST(CU_FALSE == test_exists(pSuite1, "test3")); TEST(CU_FALSE == test_exists(pSuite1, "test4")); TEST(CU_FALSE == test_exists(pSuite1, "")); TEST(CU_FALSE == test_exists(pSuite2, "test1")); TEST(CU_FALSE == test_exists(pSuite2, "test2")); TEST(CU_FALSE == test_exists(pSuite2, "test3")); TEST(CU_FALSE == test_exists(pSuite2, "test4")); TEST(CU_FALSE == test_exists(pSuite2, "")); CU_FREE(pSuite1); CU_FREE(pSuite2); 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_cleanup_test(void){ char* pName; CU_pTest pTest1 = create_test("test1", NULL); TEST_FATAL(NULL != pTest1); pName = pTest1->pName; TEST(0 != test_cunit_get_n_memevents(pTest1)); TEST(0 != test_cunit_get_n_memevents(pName)); TEST(test_cunit_get_n_allocations(pTest1) != test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pName) != test_cunit_get_n_deallocations(pName)); cleanup_test(pTest1); CU_FREE(pTest1); TEST(test_cunit_get_n_allocations(pTest1) == test_cunit_get_n_deallocations(pTest1)); TEST(test_cunit_get_n_allocations(pName) == test_cunit_get_n_deallocations(pName));}/*--------------------------------------------------*/static void test_suite_exists(void){ /* covered by test_insert_suite() */}/*--------------------------------------------------*/static void test_test_exists(void){ /* covered by test_insert_test() */}/*--------------------------------------------------*/static void group_A_case_1(void){ CU_ASSERT_TRUE(1);}static void group_A_case_2(void){ CU_ASSERT_TRUE(2);}static void group_B_case_1(void){ CU_ASSERT_FALSE(1);}static void group_B_case_2(void){ CU_ASSERT_FALSE(2);}static CU_TestInfo group_A_test_cases[] = { { "1", group_A_case_1 }, { "2", group_A_case_2 }, CU_TEST_INFO_NULL,};static CU_TestInfo group_B_test_cases[] = { { "1", group_B_case_1 }, { "2", group_B_case_2 }, CU_TEST_INFO_NULL,};static CU_SuiteInfo suites0[] = { CU_SUITE_INFO_NULL,};static CU_SuiteInfo suites1[] = { { "A1", NULL, NULL, group_A_test_cases }, { "B1", NULL, NULL, group_B_test_cases }, CU_SUITE_INFO_NULL,};static CU_SuiteInfo suites2[] = { { "A2", NULL, NULL, group_A_test_cases }, { "B2", NULL, NULL, group_B_test_cases }, CU_SUITE_INFO_NULL,};static void test_register_suite(void){ CU_pTestRegistry pReg = NULL; CU_ErrorCode status; if (CU_initialize_registry()) { fprintf(stderr, "\nError initializing registry in test_register_suite()."); return; } pReg = CU_get_registry(); /* test initial condition */ TEST_FATAL(NULL != pReg); TEST(0 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); /* test CU_register_suites() with NULL */ status = CU_register_suites(NULL); TEST(CUE_SUCCESS == status); TEST(0 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); /* test CU_register_suites() with empty array */ status = CU_register_suites(suites0); TEST(CUE_SUCCESS == status); TEST(0 == pReg->uiNumberOfSuites); TEST(0 == pReg->uiNumberOfTests); /* test CU_register_suites() with ok array */ status = CU_register_suites(suites1); TEST(CUE_SUCCESS == status); TEST(2 == pReg->uiNumberOfSuites); TEST(4 == pReg->uiNumberOfTests); /* test CU_register_suites() with duplicate suite name */ status = CU_register_suites(suites1); TEST(CUE_DUP_SUITE == status); TEST(2 == pReg->uiNumberOfSuites); TEST(4 == pReg->uiNumberOfTests); CU_cleanup_registry(); if (CU_initialize_registry()) { fprintf(stderr, "\nError initializing registry in test_register_suite()."); return; } pReg = CU_get_registry(); /* test CU_register_nsuites() with ok arrays */ status = CU_register_nsuites(2, suites1, suites2); TEST(CUE_SUCCESS == status); TEST(4 == pReg->uiNumberOfSuites); TEST(8 == pReg->uiNumberOfTests);}/*--------------------------------------------------*/void test_cunit_TestDB(void){ test_cunit_start_tests("TestDB.c"); test_CU_initialize_registry(); test_CU_cleanup_registry(); test_CU_add_suite(); test_CU_add_test(); test_CU_get_registry(); test_CU_set_registry(); test_CU
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -