亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? testrun.c

?? CUNIT
?? C
?? 第 1 頁 / 共 5 頁
字號:
  /* call the suite initialization function, if any */  if ((pSuite->pInitializeFunc) && (*pSuite->pInitializeFunc)()) {    if (f_pSuiteInitFailureMessageHandler) {      (*f_pSuiteInitFailureMessageHandler)(pSuite);    }    pRunSummary->nSuitesFailed++;    add_failure(&f_failure_list, &f_run_summary,                0, "Suite Initialization failed - Suite Skipped", "CUnit System", pSuite, NULL);    CU_set_error(result = CUE_SINIT_FAILED);  }  /* reach here if no suite initialization, or if it succeeded */  else {    pTest = pSuite->pTest;    while (pTest && (!result || (CU_get_error_action() == CUEA_IGNORE))) {      result2 = run_single_test(pTest, pRunSummary);      result = (CUE_SUCCESS == result) ? result2 : result;      pTest = pTest->pNext;    }    pRunSummary->nSuitesRun++;    /* call the suite cleanup function, if any */    if ((pSuite->pCleanupFunc) && (*pSuite->pCleanupFunc)()) {      pRunSummary->nSuitesFailed++;      add_failure(&f_failure_list, &f_run_summary,                  0, "Suite cleanup failed.", "CUnit System", pSuite, pTest);      CU_set_error(CUE_SCLEAN_FAILED);      result = (CUE_SUCCESS == result) ? CUE_SCLEAN_FAILED : result;    }  }  f_pCurSuite = NULL;  return result;}/*------------------------------------------------------------------------*//** Run a specific test. * Internal function to run a test case.  This includes * calling any handler to be run before executing the test, * running the test's function (if any), and calling any * handler to be run after executing a test. * @param pTest The test to be run (non-NULL). * @param pRunSummary The CU_RunSummary to receive the results (non-NULL). * @return A CU_ErrorCode indicating the status of the run. * @see CU_run_test() for public interface function. * @see CU_run_all_tests() for running all suites. */CU_ErrorCode run_single_test(CU_pTest pTest, CU_pRunSummary pRunSummary){  unsigned int nStartFailures;  /* keep track of the last failure BEFORE running the test */  CU_pFailureRecord pLastFailure = f_last_failure;  jmp_buf buf;  assert(pTest);  assert(pRunSummary);  nStartFailures = pRunSummary->nAssertsFailed;  CU_set_error(CUE_SUCCESS);  f_pCurTest = pTest;  if (f_pTestStartMessageHandler)    (*f_pTestStartMessageHandler)(f_pCurTest, f_pCurSuite);  /* set jmp_buf and run test */  pTest->pJumpBuf = &buf;  if (!setjmp(buf))    if (pTest->pTestFunc)      (*pTest->pTestFunc)();  pRunSummary->nTestsRun++;  /* if additional assertions have failed... */  if (pRunSummary->nAssertsFailed > nStartFailures) {    pRunSummary->nTestsFailed++;    if (pLastFailure)      pLastFailure = pLastFailure->pNext;  /* was a failure before - go to next one */    else      pLastFailure = f_failure_list;       /* no previous failure - go to 1st one */  }  else    pLastFailure = NULL;                   /* no additional failure - set to NULL */  if (f_pTestCompleteMessageHandler)    (*f_pTestCompleteMessageHandler)(f_pCurTest, f_pCurSuite, pLastFailure);  pTest->pJumpBuf = NULL;  f_pCurTest = NULL;  return CU_get_error();}/** @} */#ifdef CUNIT_BUILD_TESTS#include "test_cunit.h"typedef enum TET {  TEST_START = 1,  TEST_COMPLETE,  ALL_TESTS_COMPLETE,  SUITE_INIT_FAILED,} TestEventType;typedef struct TE {  TestEventType     type;  CU_pSuite         pSuite;  CU_pTest          pTest;  CU_pFailureRecord pFailure;  struct TE *       pNext;} TestEvent, * pTestEvent;static int f_nTestEvents = 0;static pTestEvent f_pFirstEvent = NULL;static void add_test_event(TestEventType type, CU_pSuite psuite,                           CU_pTest ptest, CU_pFailureRecord pfailure){  pTestEvent pNewEvent = (pTestEvent)malloc(sizeof(TestEvent));  pTestEvent pNextEvent = NULL;  pNewEvent->type = type;  pNewEvent->pSuite = psuite;  pNewEvent->pTest = ptest;  pNewEvent->pFailure = pfailure;  pNewEvent->pNext = NULL;  pNextEvent = f_pFirstEvent;  if (pNextEvent) {    while (pNextEvent->pNext) {      pNextEvent = pNextEvent->pNext;    }    pNextEvent->pNext = pNewEvent;  }  else {    f_pFirstEvent = pNewEvent;  }  ++f_nTestEvents;}static void clear_test_events(void){  pTestEvent pCurrentEvent = f_pFirstEvent;  pTestEvent pNextEvent = NULL;  while (pCurrentEvent) {    pNextEvent = pCurrentEvent->pNext;    free(pCurrentEvent);    pCurrentEvent = pNextEvent;  }  f_pFirstEvent = NULL;  f_nTestEvents = 0;}static void test_start_handler(const CU_pTest pTest, const CU_pSuite pSuite){  TEST(CU_is_test_running());  TEST(pSuite == CU_get_current_suite());  TEST(pTest == CU_get_current_test());  add_test_event(TEST_START, pSuite, pTest, NULL);}static void test_complete_handler(const CU_pTest pTest, const CU_pSuite pSuite,                                  const CU_pFailureRecord pFailure){  TEST(CU_is_test_running());  TEST(pSuite == CU_get_current_suite());  TEST(pTest == CU_get_current_test());  add_test_event(TEST_COMPLETE, pSuite, pTest, pFailure);}static void test_all_complete_handler(const CU_pFailureRecord pFailure){  TEST(!CU_is_test_running());  add_test_event(ALL_TESTS_COMPLETE, NULL, NULL, pFailure);}static void suite_init_failure_handler(const CU_pSuite pSuite){  TEST(CU_is_test_running());  TEST(pSuite == CU_get_current_suite());  add_test_event(SUITE_INIT_FAILED, pSuite, NULL, NULL);}void test_succeed(void) { CU_TEST(TRUE); }void test_fail(void) { CU_TEST(FALSE); }int suite_fail(void) { return 1; }/*-------------------------------------------------*//* tests: *    CU_set_test_start_handler() *    CU_set_test_complete_handler() *    CU_set_all_test_complete_handler() *    CU_set_suite_init_failure_handler() *    CU_get_test_start_handler() *    CU_get_test_complete_handler() *    CU_get_all_test_complete_handler() *    CU_get_suite_init_failure_handler() */static void test_message_handlers(void){  CU_pSuite pSuite1 = NULL;  CU_pSuite pSuite2 = NULL;  CU_pTest  pTest1 = NULL;  CU_pTest  pTest2 = NULL;  CU_pTest  pTest3 = NULL;  pTestEvent pEvent = NULL;  CU_pRunSummary pRunSummary = NULL;  TEST(!CU_is_test_running());  /* handlers should be NULL on startup */  TEST(NULL == CU_get_test_start_handler());  TEST(NULL == CU_get_test_complete_handler());  TEST(NULL == CU_get_all_test_complete_handler());  TEST(NULL == CU_get_suite_init_failure_handler());  /* register some suites and tests */  CU_initialize_registry();  pSuite1 = CU_add_suite("suite1", NULL, NULL);  pTest1 = CU_add_test(pSuite1, "test1", test_succeed);  pTest2 = CU_add_test(pSuite1, "test2", test_fail);  pTest3 = CU_add_test(pSuite1, "test3", test_succeed);  pSuite2 = CU_add_suite("suite2", suite_fail, NULL);  CU_add_test(pSuite2, "test4", test_succeed);  TEST_FATAL(CUE_SUCCESS == CU_get_error());  /* first run tests without handlers set */  clear_test_events();  CU_run_all_tests();  TEST(0 == f_nTestEvents);  TEST(NULL == f_pFirstEvent);  TEST(1 == CU_get_number_of_suites_run());  TEST(1 == CU_get_number_of_suites_failed());  TEST(3 == CU_get_number_of_tests_run());  TEST(1 == CU_get_number_of_tests_failed());  TEST(3 == CU_get_number_of_asserts());  TEST(2 == CU_get_number_of_successes());  TEST(1 == CU_get_number_of_failures());  TEST(2 == CU_get_number_of_failure_records());  pRunSummary = CU_get_run_summary();  TEST(pRunSummary->nSuitesRun      == CU_get_number_of_suites_run());  TEST(pRunSummary->nSuitesFailed   == CU_get_number_of_suites_failed());  TEST(pRunSummary->nTestsRun       == CU_get_number_of_tests_run());  TEST(pRunSummary->nTestsFailed    == CU_get_number_of_tests_failed());  TEST(pRunSummary->nAsserts        == CU_get_number_of_asserts());  TEST(pRunSummary->nAssertsFailed  == CU_get_number_of_failures());  TEST(pRunSummary->nFailureRecords == CU_get_number_of_failure_records());  /* set handlers to local functions */  CU_set_test_start_handler(test_start_handler);  CU_set_test_complete_handler(test_complete_handler);  CU_set_all_test_complete_handler(test_all_complete_handler);  CU_set_suite_init_failure_handler(suite_init_failure_handler);  /* confirm handlers set properly */  TEST(test_start_handler == CU_get_test_start_handler());  TEST(test_complete_handler == CU_get_test_complete_handler());  TEST(test_all_complete_handler == CU_get_all_test_complete_handler());  TEST(suite_init_failure_handler == CU_get_suite_init_failure_handler());  /* run tests again with handlers set */  clear_test_events();  CU_run_all_tests();  TEST(8 == f_nTestEvents);  if (8 == f_nTestEvents) {    pEvent = f_pFirstEvent;    TEST(TEST_START == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest1 == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(TEST_COMPLETE == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest1 == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(TEST_START == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest2 == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(TEST_COMPLETE == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest2 == pEvent->pTest);    TEST(NULL != pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(TEST_START == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest3 == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(TEST_COMPLETE == pEvent->type);    TEST(pSuite1 == pEvent->pSuite);    TEST(pTest3 == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(SUITE_INIT_FAILED == pEvent->type);    TEST(pSuite2 == pEvent->pSuite);    TEST(NULL == pEvent->pTest);    TEST(NULL == pEvent->pFailure);    pEvent = pEvent->pNext;    TEST(ALL_TESTS_COMPLETE == pEvent->type);    TEST(NULL == pEvent->pSuite);    TEST(NULL == pEvent->pTest);    TEST(NULL != pEvent->pFailure);    TEST(NULL != pEvent->pFailure->pNext);    TEST(NULL == pEvent->pFailure->pNext->pNext);    TEST(pEvent->pFailure == CU_get_failure_list());  }  TEST(1 == CU_get_number_of_suites_run());  TEST(1 == CU_get_number_of_suites_failed());  TEST(3 == CU_get_number_of_tests_run());  TEST(1 == CU_get_number_of_tests_failed());  TEST(3 == CU_get_number_of_asserts());  TEST(2 == CU_get_number_of_successes());  TEST(1 == CU_get_number_of_failures());  TEST(2 == CU_get_number_of_failure_records());  pRunSummary = CU_get_run_summary();  TEST(pRunSummary->nSuitesRun      == CU_get_number_of_suites_run());  TEST(pRunSummary->nSuitesFailed   == CU_get_number_of_suites_failed());  TEST(pRunSummary->nTestsRun       == CU_get_number_of_tests_run());  TEST(pRunSummary->nTestsFailed    == CU_get_number_of_tests_failed());  TEST(pRunSummary->nAsserts        == CU_get_number_of_asserts());  TEST(pRunSummary->nAssertsFailed  == CU_get_number_of_failures());  TEST(pRunSummary->nFailureRecords == CU_get_number_of_failure_records());  /* clear handlers and run again */  CU_set_test_start_handler(NULL);  CU_set_test_complete_handler(NULL);  CU_set_all_test_complete_handler(NULL);  CU_set_suite_init_failure_handler(NULL);  TEST(NULL == CU_get_test_start_handler());  TEST(NULL == CU_get_test_complete_handler());

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
丝袜美腿一区二区三区| 日本强好片久久久久久aaa| 久久久久久电影| 2020国产精品自拍| 日本一二三不卡| 亚洲欧美另类小说| 免费看日韩a级影片| 国产一区二区在线免费观看| zzijzzij亚洲日本少妇熟睡| 一本大道久久a久久精品综合| 在线一区二区三区四区五区| 欧美一区二区三区啪啪| 国产亚洲欧洲一区高清在线观看| 国产精品免费久久久久| 日本v片在线高清不卡在线观看| 国产伦精品一区二区三区在线观看| 播五月开心婷婷综合| 欧美日韩久久久| 久久九九国产精品| 午夜视频在线观看一区| 国产精品538一区二区在线| 欧美视频精品在线观看| 国产欧美一区二区三区网站| 亚洲最新视频在线观看| 99精品偷自拍| 精品精品国产高清a毛片牛牛| 中文字幕综合网| 大陆成人av片| 国产欧美视频一区二区| 精品在线你懂的| 日韩午夜精品视频| 日本成人在线一区| 欧美精品亚洲一区二区在线播放| 日韩久久一区二区| 99在线精品观看| 一区精品在线播放| 成人av网站免费| 亚洲精品久久7777| 欧美午夜精品久久久久久超碰| 国产精品欧美一区喷水| 成人激情黄色小说| 欧美国产综合色视频| 国产成人自拍网| 亚洲国产高清在线观看视频| av爱爱亚洲一区| 国产精品嫩草影院com| 99久久精品免费看国产免费软件| 一区二区三区四区亚洲| 国产成人av影院| aaa国产一区| 亚洲午夜一区二区| 国产一区999| 中文字幕一区二区三区在线不卡| 91麻豆国产精品久久| 欧美一级午夜免费电影| 国产精品一区在线观看乱码| 久久久影院官网| 色天天综合久久久久综合片| 亚洲影院理伦片| 337p粉嫩大胆色噜噜噜噜亚洲| 风间由美一区二区三区在线观看 | 亚洲精品网站在线观看| 91在线视频18| 亚洲18色成人| 国产精品久久网站| 欧美丰满美乳xxx高潮www| 日本三级韩国三级欧美三级| 国产精品国产三级国产普通话99| 欧美日韩精品一区视频| 972aa.com艺术欧美| 麻豆精品一区二区综合av| 一区二区三区四区蜜桃| 久久久精品国产99久久精品芒果| 色一区在线观看| 国产成人av影院| 国产乱理伦片在线观看夜一区| 夜夜嗨av一区二区三区| 成人免费一区二区三区视频| 久久一夜天堂av一区二区三区| 欧美又粗又大又爽| 99久久99久久免费精品蜜臀| www.久久精品| 欧美伊人精品成人久久综合97 | 91精品国产色综合久久不卡电影 | 久久久综合视频| 久久婷婷国产综合国色天香| 欧美精品日韩一区| 欧美日韩成人综合天天影院| 欧美人狂配大交3d怪物一区 | 亚洲影院在线观看| 午夜精品福利久久久| 午夜精品一区二区三区免费视频| 一区二区三区四区不卡视频| 亚洲午夜久久久久| 日韩中文字幕一区二区三区| 日产国产欧美视频一区精品| 精品在线你懂的| 成人免费看黄yyy456| 欧美日韩精品三区| 日韩一区二区在线观看| 久久综合狠狠综合久久综合88 | 色视频欧美一区二区三区| 欧美视频中文一区二区三区在线观看| 日本精品视频一区二区| 欧美一区二区三区不卡| 国产欧美一区二区精品忘忧草| 国产精品卡一卡二| 久久精品国产成人一区二区三区| 国产成人精品亚洲午夜麻豆| 91丨porny丨国产入口| 精品国产自在久精品国产| 亚洲色图一区二区| 国产高清成人在线| 欧美日韩国产一级| 国产精品三级av| 国产精品一区二区你懂的| 欧美视频一区二| 一区二区三区91| 国产伦精品一区二区三区视频青涩| 欧美日韩精品久久久| 国产精品久久久久久久久免费相片 | 一区二区三区在线播放| 国产高清亚洲一区| 亚洲精品一区二区三区精华液| 一区二区三区四区在线免费观看| 国产河南妇女毛片精品久久久| 欧美伦理电影网| 一区二区三区波多野结衣在线观看| 成人动漫一区二区三区| 亚洲天天做日日做天天谢日日欢| 国产一区二区三区在线看麻豆| 国产欧美一区二区精品忘忧草 | 久久久99精品久久| 国产精品综合久久| 欧美精品一区二区久久久| 国内精品第一页| 中文字幕 久热精品 视频在线| 国产不卡免费视频| 亚洲蜜臀av乱码久久精品| 91麻豆国产在线观看| 日韩主播视频在线| 国产性做久久久久久| 99精品欧美一区| 午夜激情一区二区| 国产三级欧美三级| 91国偷自产一区二区开放时间| 亚洲第一激情av| 欧美极品美女视频| 国产一区二区三区在线观看免费视频| 91成人国产精品| 日韩高清在线电影| 日韩精品最新网址| 综合久久久久综合| 99久久综合国产精品| 久久久精品天堂| 欧美久久久一区| www.亚洲在线| 亚洲综合激情网| 国产精品久久二区二区| 欧洲另类一二三四区| 波多野结衣亚洲| 国产精品影视在线| 日韩精品乱码免费| 久久久一区二区三区捆绑**| 欧美日韩精品福利| 欧美日本一道本| 91麻豆产精品久久久久久| 成人av资源站| 成年人国产精品| 国产一二精品视频| 激情欧美一区二区| 日韩高清一区二区| 亚洲欧洲成人自拍| 69堂成人精品免费视频| 香蕉久久一区二区不卡无毒影院| 一区二区欧美在线观看| 亚洲欧洲成人自拍| 精品88久久久久88久久久 | 婷婷综合五月天| 亚洲一二三区在线观看| 国产欧美日韩在线看| 日韩免费一区二区| 91在线免费看| 国产ts人妖一区二区| 久久精品国产网站| 久久99热狠狠色一区二区| 天天av天天翘天天综合网| 一区二区国产视频| 亚洲一区二区三区激情| 亚洲一区二区三区四区五区黄| 欧美极品美女视频| 久久久精品天堂| 国产精品久久久久精k8| 亚洲女同ⅹxx女同tv| 亚洲欧美在线高清| 亚洲最大成人网4388xx| 一区二区三区日韩欧美精品| 日本最新不卡在线| 麻豆91在线播放| 国产成人av福利|