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

📄 cexfunctiontester.cpp

📁 这是一个能够自动生成文档的程序
💻 CPP
📖 第 1 页 / 共 4 页
字号:

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    //由于合并时会删除完全相同的函数,这里要在堆上生成对象;
    CExFunction* ipOther = new CExFunction();
    CTokenList list;
    CTokenReader reader;
    reader.ReadTokenList(list, "int MyFunc()");
    CExFunction::ParseDeclare(list, TRIM_PUBLIC, *ipOther);
    ipOther->SetDefined(TRUE);
    CTokenList list2;
    reader.ReadTokenList(list2, "int MyFunc(int i)");
    CExFunction::ParseDeclare(list2, TRIM_PUBLIC, *pObj);
    CExFunction* pFunc3 = new CExFunction();
    CTokenList list3;
    reader.ReadTokenList(list3, "int MyFunc(int i, int j)");
    CExFunction::ParseDeclare(list3, TRIM_PUBLIC, *pFunc3);
    pObj->UniteFunction(pFunc3);
    TEST_RUN( pObj->UniteFunction(ipOther) );
    reader.ClearTokenList(list); //!
    reader.ClearTokenList(list2); //!
    reader.ClearTokenList(list3); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-9-14 17:9:45]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    //由于合并时会删除完全相同的函数,这里要在堆上生成对象;
    CExFunction* ipOther = new CExFunction();
    CTokenList list;
    CTokenReader reader;
    reader.ReadTokenList(list, "int MyFunc()");
    CExFunction::ParseDeclare(list, TRIM_PUBLIC, *ipOther);
    ipOther->SetDefined(TRUE);
    CTokenList list2;
    reader.ReadTokenList(list2, "int MyFunc(int i)");
    CExFunction::ParseDeclare(list2, TRIM_PUBLIC, *pObj);
    CExFunction* pFunc3 = new CExFunction();
    CTokenList list3;
    reader.ReadTokenList(list3, "int MyFunc()");
    CExFunction::ParseDeclare(list3, TRIM_PUBLIC, *pFunc3);
    pObj->UniteFunction(pFunc3);
    TEST_RUN( pObj->UniteFunction(ipOther) );
    reader.ClearTokenList(list); //!
    reader.ClearTokenList(list2); //!
    reader.ClearTokenList(list3); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-9-14 17:13:5]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    //由于合并时会删除完全相同的函数,这里要在堆上生成对象;
    CExFunction* ipOther = new CExFunction();
    CTokenList list;
    CTokenReader reader;
    reader.ReadTokenList(list, "int MyFunc()");
    CExFunction::ParseDeclare(list, TRIM_PUBLIC, *ipOther);
    CTokenList list2;
    reader.ReadTokenList(list2, "int MyFunc()");
    CExFunction::ParseDeclare(list2, TRIM_PUBLIC, *pObj);
    TEST_RUN( pObj->UniteFunction(ipOther) );
    reader.ClearTokenList(list); //!
    reader.ClearTokenList(list2); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-9-14 18:9:12]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    //由于合并时会删除完全相同的函数,这里要在堆上生成对象;
    CExFunction* ipOther = new CExFunction();
    CTokenList list;
    CTokenReader reader;
    reader.ReadTokenList(list, "int MyFunc()");
    CExFunction::ParseDeclare(list, TRIM_PUBLIC, *ipOther);
    CTokenList list2;
    reader.ReadTokenList(list2, "int MyFunc(int i)");
    CExFunction::ParseDeclare(list2, TRIM_PUBLIC, *pObj);
    CExFunction* pFunc3 = new CExFunction();
    CTokenList list3;
    reader.ReadTokenList(list3, "int MyFunc()");
    CExFunction::ParseDeclare(list3, TRIM_PUBLIC, *pFunc3);
    pObj->UniteFunction(pFunc3);
    TEST_RUN( pObj->UniteFunction(ipOther) );
    reader.ClearTokenList(list); //!
    reader.ClearTokenList(list2); //!
    reader.ClearTokenList(list3); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-9-14 18:9:34]

    //??BVTEST_BEGIN_1(O,CExFunction,ipOther,P,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->UniteFunction(ipOther) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [7] [自动] [2006-9-14 15:41:46]

    //$$CASE_END(UniteFunction_CExFunctionP())

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

void CExFunctionTester::ParsePrecursor_CTokenListR_CExFunctionR_BOOL()
{
    TEST_BEGIN(CExFunction::ParsePrecursor(CTokenList&,CExFunction&,BOOL));

    //$$CASE_BEGIN(ParsePrecursor_CTokenListR_CExFunctionR_BOOL())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "const unsigned int*");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "const unsigned int*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-9-18 18:52:15]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "const unsigned int* Namespace::Class::");
    CExFunction oFunc;
    BOOL iIsInType = FALSE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "const unsigned int*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-9-18 18:52:15]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "CList <int *, int * > *");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "CList<int*,int*>*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-9-18 18:52:15]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "template<int> CList<int*, int*>*");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "CList<int*,int*>*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-9-18 18:52:15]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "inline const unsigned int*");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "const unsigned int*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-9-18 18:52:15]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "virtual const unsigned int*");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "const unsigned int*" );
    TEST_ASSERT( ISTRIM(oFunc.mTrim, VIRTUAL) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-9-19 16:38:37]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "static const unsigned int*");
    CExFunction oFunc;
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "const unsigned int*" );
    TEST_ASSERT( oFunc.mTrim & TRIM_STATIC );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [7] [正常] [2006-9-19 16:40:23]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "CMyClass*");
    CExFunction oFunc;
    gIdens.AddIdentifier("CMyClass", ID_TYPE);
    BOOL iIsInType = TRUE;
    TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    TEST_ASSERT( oFunc.GetReturnType() == "CMyClass*" );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [8] [正常] [2006-9-18 18:52:15]

    //??BVTEST_BEGIN_3(O,CTokenList,iList,R,0,CExFunction,oFunc,R,0,BOOL,iIsInType,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->ParsePrecursor(iList, oFunc, iIsInType) );
    //TEST_ASSERT();
    //??BVTEST_END(O,3)
    //$$ [9] [自动] [2006-9-18 18:52:15]

    //$$CASE_END(ParsePrecursor_CTokenListR_CExFunctionR_BOOL())

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

void CExFunctionTester::ParseDeclare_CTokenListR_UINT_CExFunctionR_BOOL()
{
    TEST_BEGIN(CExFunction::ParseDeclare(CTokenList&,UINT,CExFunction&,BOOL));

    //$$CASE_BEGIN(ParseDeclare_CTokenListR_UINT_CExFunctionR_BOOL())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList   ;
    CTokenReader reader;
    reader.ReadTokenList(iList, "void Func(int i, int* j) {}");
    UINT iAccessTrim   = TRIM_PRIVATE;
    CExFunction oFunc  ;
    BOOL iIsInType     = FALSE;
    TEST_RUN( pObj->ParseDeclare(iList, iAccessTrim, oFunc, iIsInType) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-9-18 19:35:10]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "void Func(int i[10], int* j) {}");
    UINT iAccessTrim   = TRIM_PRIVATE;
    CExFunction oFunc;
    BOOL iIsInType     = FALSE;
    TEST_RUN( pObj->ParseDeclare(iList, iAccessTrim, oFunc, iIsInType) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-9-19 17:46:18]

    //??BVTEST_BEGIN_4(O,CTokenList,iList,R,0,UINT,iAccessTrim,R,0,CExFunction,oFunc,R,0,BOOL,iIsInType,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->ParseDeclare(iList, iAccessTrim, oFunc, iIsInType) );
    //TEST_ASSERT();
    //??BVTEST_END(O,4)
    //$$ [3] [自动] [2006-9-18 19:35:10]

    //$$CASE_END(ParseDeclare_CTokenListR_UINT_CExFunctionR_BOOL())

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

void CExFunctionTester::ParseOneParameter_CTokenListR()
{
    TEST_BEGIN(CExFunction::ParseOneParameter(CTokenList&));
    PARAMETER* ret;

    //$$CASE_BEGIN(ParseOneParameter_CTokenListR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int i=0");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    TEST_ASSERT( ret->type == "int" );
    TEST_ASSERT( ret->name == "i" );
    TEST_ASSERT( ret->array == "" );
    TEST_ASSERT( ret->defVal == "0" );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int i=GetAge(\"name\")");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int i[10]");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "const int");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int&*");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "const CList < CString *, CString * >* list");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [7] [正常] [2006-9-18 19:42:0]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [8] [正常] [2006-9-23 9:34:18]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;
    CTokenReader reader;
    reader.ReadTokenList(iList, "int i=");
    TEST_RUN( ret = pObj->ParseOneParameter(iList) );
    reader.ClearTokenList(iList); //!
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [9] [正常] [2006-9-23 9:37:32]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    CTokenList iList;

⌨️ 快捷键说明

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