⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccppparsertester.cpp

📁 这是一个能够自动生成文档的程序
💻 CPP
📖 第 1 页 / 共 3 页
字号:
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-17 21:32:19]

    /// #if defined WIN32
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "defined(WIN32)");
    POSITION ioPos = ioList.GetHeadPosition();
    gIdens.AddGlobalMacro("WIN32");
    TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    TEST_ASSERT( pObj->IsSkip() == FALSE );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-24 16:33:39]

    /// #if defined 未定义
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "defined NOTDEFINE");
    POSITION ioPos = ioList.GetHeadPosition();
    gIdens.AddGlobalMacro("WIN32");
    TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    TEST_ASSERT( pObj->IsSkip() == TRUE );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-17 22:31:12]

    /// #if !defined WIN32
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "!defined WIN32");
    POSITION ioPos = ioList.GetHeadPosition();
    gIdens.AddGlobalMacro("WIN32");
    TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    TEST_ASSERT( pObj->IsSkip() == TRUE );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-17 22:27:23]

    /// #if !defined 未定义
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "!defined NOTDEFINE");
    POSITION ioPos = ioList.GetHeadPosition();
    gIdens.AddGlobalMacro("WIN32");
    TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    TEST_ASSERT( pObj->IsSkip() == FALSE );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-17 22:31:37]

    /// #if define 关键字不对,抛出异常
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "define WIN32");
    POSITION ioPos = ioList.GetHeadPosition();
    gIdens.AddGlobalMacro("WIN32");
    TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-8-17 22:32:22]

    //??BVTEST_BEGIN_2(O,CTokenList,ioList,R,0,POSITION,ioPos,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->ParsePreprocessorIf(ioList, ioPos) );
    //TEST_ASSERT();
    //??BVTEST_END(O,2)
    //$$ [7] [自动] [2006-8-17 21:32:19]

    //$$CASE_END(ParsePreprocessorIf_CTokenListR_POSITIONR())

    TEST_RATE(1000);
    TEST_END();
}
//$$ParsePreprocessorIf_CTokenListR_POSITIONR()





void CCppParserTester::ParsePreprocessorDefine_CTokenListR_POSITIONR()
{
    TEST_BEGIN(CCppParser::ParsePreprocessorDefine(CTokenList&,POSITION&));

    //$$CASE_BEGIN(ParsePreprocessorDefine_CTokenListR_POSITIONR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList  ;
    POSITION ioPos     = NULL;
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-18 13:14:49]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT \"Visual Unit\"");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-18 13:38:10]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT Visual Unit");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-19 11:44:53]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT Visual \\\nUnit");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-24 16:53:57]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT \"Visual Unit\"\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-19 9:25:9]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "( \"Visual Unit ver date\"\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_EXCEPTION()
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    TEST_THROW(CCodeException)
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-8-19 11:31:37]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "int(ver, date) \"Visual Unit ver date\"\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_EXCEPTION()
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    TEST_THROW(CCodeException)
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [7] [正常] [2006-8-19 11:31:56]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT(ver,date) \"Visual Unit ver date\"\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [8] [正常] [2006-8-19 11:45:10]

    BVTEST_BEGIN_2(O,CTokenList,ioList,R,0,POSITION,ioPos,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    TEST_RUN( pObj->ParsePreprocessorDefine(ioList, ioPos) );
    //TEST_ASSERT();
    BVTEST_END(O,2)
    //$$ [9] [自动] [2006-8-18 13:14:49]

    //$$CASE_END(ParsePreprocessorDefine_CTokenListR_POSITIONR())

    TEST_RATE(1000);
    TEST_END();
}
//$$ParsePreprocessorDefine_CTokenListR_POSITIONR()

void CCppParserTester::ReadTokenList_CTokenListR_LPCTSTR()
{
    TEST_BEGIN(CCppParser::ReadTokenList(CTokenList&,LPCTSTR));

    //$$CASE_BEGIN(ReadTokenList_CTokenListR_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList oList  ;
    LPCTSTR ipCode    = "int i=0;";
    TEST_RUN( pObj->ReadTokenList(oList, ipCode) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-18 13:21:46]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList oList;
    LPCTSTR ipCode    = "int i/*akdk*/=0;";
    TEST_RUN( pObj->ReadTokenList(oList, ipCode) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-18 13:25:0]

    //??BVTEST_BEGIN_2(O,CTokenList,oList,R,0,LPCTSTR,ipCode,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->ReadTokenList(oList, ipCode) );
    //TEST_ASSERT();
    //??BVTEST_END(O,2)
    //$$ [3] [自动] [2006-8-18 13:21:46]

    //$$CASE_END(ReadTokenList_CTokenListR_LPCTSTR())

    TEST_RATE(1000);
    TEST_END();
}
//$$ReadTokenList_CTokenListR_LPCTSTR()





void CCppParserTester::ParsePreprocessorUndefine_CTokenListR_POSITIONR()
{
    TEST_BEGIN(CCppParser::ParsePreprocessorUndefine(CTokenList&,POSITION&));

    //$$CASE_BEGIN(ParsePreprocessorUndefine_CTokenListR_POSITIONR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "_VUNIT\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    CMacro* pMacro = new CMacro();
    pMacro->SetName("_VUNIT");
    gIdens.AddIdentifier(pMacro->GetName(), ID_MACRO, pMacro);
    TEST_ASSERT(gIdens.IsDefinedMacro("_VUNIT") != FALSE);
    TEST_RUN( pObj->ParsePreprocessorUndefine(ioList, ioPos) );
    TEST_ASSERT(gIdens.IsDefinedMacro("_VUNIT") == FALSE);
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-22 15:9:45]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "**\n");
	POSITION ioPos     = ioList.GetHeadPosition();
    TEST_EXCEPTION()
    TEST_RUN( pObj->ParsePreprocessorUndefine(ioList, ioPos) );
    TEST_THROW(CCodeException)
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-22 15:18:37]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, "int\n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_EXCEPTION()
    TEST_RUN( pObj->ParsePreprocessorUndefine(ioList, ioPos) );
    TEST_THROW(CCodeException)
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-22 15:20:15]

    BVTEST_BEGIN_2(O,CTokenList,ioList,R,0,POSITION,ioPos,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    TEST_RUN( pObj->ParsePreprocessorUndefine(ioList, ioPos) );
    //TEST_ASSERT();
    BVTEST_END(O,2)
    //$$ [4] [自动] [2006-8-22 15:9:45]

    //$$CASE_END(ParsePreprocessorUndefine_CTokenListR_POSITIONR())

    TEST_RATE(1000);
    TEST_END();
}
//$$ParsePreprocessorUndefine_CTokenListR_POSITIONR()

void CCppParserTester::ParsePreprocessorInclude_CTokenListR_POSITIONR()
{
    TEST_BEGIN(CCppParser::ParsePreprocessorInclude(CTokenList&,POSITION&));

    //$$CASE_BEGIN(ParsePreprocessorInclude_CTokenListR_POSITIONR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList  ;
    pObj->ReadTokenList(ioList, " \"MyFile.h\" \n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorInclude(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-23 16:6:22]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, " \"..\\MyFile.h\" \n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorInclude(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-23 16:10:3]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList ioList;
    pObj->ReadTokenList(ioList, " <MyFile.h> \n");
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( pObj->ParsePreprocessorInclude(ioList, ioPos) );
    pObj->ClearTokenList(ioList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-23 16:9:47]

    //??BVTEST_BEGIN_2(O,CTokenList,ioList,R,0,POSITION,ioPos,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->ParsePreprocessorInclude(ioList, ioPos) );
    //TEST_ASSERT();
    //??BVTEST_END(O,2)
    //$$ [4] [自动] [2006-8-23 16:6:22]

    //$$CASE_END(ParsePreprocessorInclude_CTokenListR_POSITIONR())

    TEST_RATE(1000);
    TEST_END();
}
//$$ParsePreprocessorInclude_CTokenListR_POSITIONR()

void CCppParserTester::ParseCode_charP()
{
    TEST_BEGIN(CCppParser::ParseCode(char*));
    BOOL ret;

    //$$CASE_BEGIN(ParseCode_charP())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    char temp[1024] = "#ifndef IGNORE_TEST_TRACE\n#define TEST_TRACEE(n)  VUX_Dump('a', 1, 3, 1, #n, n);\n#else \n#define TEST_TRACEE(n)\n#endif";
    char* ipCode  = temp;
    TEST_RUN( ret = pObj->ParseCode(ipCode) );
    TEST_ASSERT( ret == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -