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

📄 cidentifierstester.cpp

📁 这是一个能够自动生成文档的程序
💻 CPP
字号:
/**************************************************
//$$ BEGIN
LPCTSTR@@0@2@""$0
CPage@@1@1@()
CTokenList@@1@1@()
POSITION@@0@1@0
//$$ END
**************************************************/


/**************************************************
作    者:user1
建立日期:2006-8-25
修改日期:
说    明:测试文件,用于测试[CIdentifiers]。
**************************************************/

#include "stdafx.h"
//
/////////////////////////////////////////////////////////////////////////////
#include "CIdentifiersTester.h"

//
/////////////////////////////////////////////////////////////////////////////

void CIdentifiersTester::ClassTest()
{
    TEST_SOURCE_NAME(Identifiers.cpp);
    CUSTOM_TEST(CIdentifiers);
 
    //$$
    TEST_CALL_BEGIN(CIdentifiers,1,0)
    TEST_CALL1(Init_())//Init()
    TEST_CALL1(Search_LPCTSTR())//Search(LPCTSTR)
    TEST_CALL1(IsDefinedMacro_LPCTSTR_CPageP())//IsDefinedMacro(LPCTSTR,CPage*)
    TEST_CALL1(AddGlobalMacro_LPCTSTR())//AddGlobalMacro(LPCTSTR)
    TEST_CALL1(QueryKeyword_LPCTSTR())//QueryKeyword(LPCTSTR)
    TEST_CALL1(UnwindMacro_LPCTSTR_CPageP_CTokenListR_POSITIONR())//UnwindMacro(LPCTSTR,CPage*,CTokenList&,POSITION&)
    TEST_CALL_END()
    //$$
}

//
/////////////////////////////////////////////////////////////////////////////

CIdentifiersTester::CIdentifiersTester()
{
    pObj = 0;
}

CIdentifiersTester::~CIdentifiersTester()
{

}

void CIdentifiersTester::BeginCase(int arg)
{
    switch(arg)
    {

    case ARG_DEFAULT:
    {
        pObj = new TESTCLASS();
        break;
    }
    /*
    case :
    {
        pObj = new TESTCLASS();
        break;
    }
    case :
    {
        pObj = new TESTCLASS();
        break;
    }
    */

    }
}

void CIdentifiersTester::EndCase(int /*arg*/)
{
    delete pObj;
    pObj = 0;
}

//自定义测试,用MY_ASSERT(布尔表达式)断言预期输出
/////////////////////////////////////////////////////////////////////////////

void CIdentifiersTester::CustomTest()
{

}

//
/////////////////////////////////////////////////////////////////////////////

void CIdentifiersTester::Init_()
{
    TEST_BEGIN(CIdentifiers::Init());

    //$$CASE_BEGIN(Init_())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    TEST_RUN( pObj->Init() );
    TEST_ASSERT( pObj->Search("int3") == NULL );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-25 17:11:27]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    TEST_RUN( pObj->Init() );
    TEST_ASSERT( pObj->Search("int") != NULL );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-25 11:34:47]

    //??BVTEST_BEGIN_0(O)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->Init() );
    //TEST_ASSERT();
    //??BVTEST_END0(O)
    //$$ [3] [自动] [2006-8-25 11:34:47]

    //$$CASE_END(Init_())

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





void CIdentifiersTester::Search_LPCTSTR()
{
    TEST_BEGIN(CIdentifiers::Search(LPCTSTR));
    CIdenItem* ret;

    //$$CASE_BEGIN(Search_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iName  = "int";
    TEST_RUN( ret = pObj->Search(iName) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-25 16:2:47]

    //??BVTEST_BEGIN_1(O,LPCTSTR,iName,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( ret = pObj->Search(iName) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [2] [自动] [2006-8-25 16:2:47]

    //$$CASE_END(Search_LPCTSTR())

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

void CIdentifiersTester::IsDefinedMacro_LPCTSTR_CPageP()
{
    TEST_BEGIN(CIdentifiers::IsDefinedMacro(LPCTSTR,CPage*));
    BOOL ret;

    //$$CASE_BEGIN(IsDefinedMacro_LPCTSTR_CPageP())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iName  = "WIN32";
    CPage* ipPage   = NULL;
    pObj->AddGlobalMacro("WIN32;_VUNIT");
    TEST_RUN( ret = pObj->IsDefinedMacro(iName, ipPage) );
    TEST_ASSERT( ret == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-25 16:58:47]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iName  = "WIN32";
    CPage ipPage("cpp.h");
    pObj->AddGlobalMacro("WIN32;_VUNIT");
    TEST_RUN( ret = pObj->IsDefinedMacro(iName, &ipPage) );
    TEST_ASSERT( ret == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-25 17:0:9]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iName  = "ABCDE";
    CPage ipPage("cpp.h");
    pObj->AddGlobalMacro("WIN32;_VUNIT");
    TEST_RUN( ret = pObj->IsDefinedMacro(iName, &ipPage) );
    TEST_ASSERT( ret == FALSE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-25 17:0:37]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iName  = "int";
    CPage ipPage("cpp.h");
    pObj->AddGlobalMacro("WIN32;_VUNIT");
    TEST_RUN( ret = pObj->IsDefinedMacro(iName, &ipPage) );
    TEST_ASSERT( ret == FALSE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-25 17:1:3]

    //??BVTEST_BEGIN_2(O,LPCTSTR,iName,R,0,CPage,ipPage,P,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( ret = pObj->IsDefinedMacro(iName, ipPage) );
    //TEST_ASSERT();
    //??BVTEST_END(O,2)
    //$$ [5] [自动] [2006-8-25 16:58:47]

    //$$CASE_END(IsDefinedMacro_LPCTSTR_CPageP())

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

void CIdentifiersTester::AddGlobalMacro_LPCTSTR()
{
    TEST_BEGIN(CIdentifiers::AddGlobalMacro(LPCTSTR));

    //$$CASE_BEGIN(AddGlobalMacro_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = "WIN32;_VUNIT";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("WIN32") == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-25 17:13:47]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = "WIN32;_VUNIT";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("_VUNIT") == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-25 17:14:24]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = "";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("_VUNIT") == FALSE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-25 17:14:38]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = "WIN32;_VUNIT;";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("WIN32") == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-25 17:15:14]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = ";WIN32;_VUNIT;";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("WIN32") == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-25 17:15:29]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iMacros  = ";WIN32;_VUNIT";
    TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    TEST_ASSERT( pObj->IsDefinedMacro("WIN32") == TRUE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-8-25 17:15:59]

    //??BVTEST_BEGIN_1(O,LPCTSTR,iMacros,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->AddGlobalMacro(iMacros) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [7] [自动] [2006-8-25 17:13:47]

    //$$CASE_END(AddGlobalMacro_LPCTSTR())

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



void CIdentifiersTester::QueryKeyword_LPCTSTR()
{
    TEST_BEGIN(CIdentifiers::QueryKeyword(LPCTSTR));
    KEYWORD ret;

    //$$CASE_BEGIN(QueryKeyword_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iWord  = "int";
    TEST_RUN( ret = pObj->QueryKeyword(iWord) );
    TEST_ASSERT( ret == KEY_INT );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-26 18:15:20]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iWord  = "ifndef";
    TEST_RUN( ret = pObj->QueryKeyword(iWord) );
    TEST_ASSERT( ret == KEY_IFNDEF );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-26 18:16:2]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iWord  = "int2";
    TEST_RUN( ret = pObj->QueryKeyword(iWord) );
    TEST_ASSERT( ret == KEY_NOT );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-26 18:15:20]

    //??BVTEST_BEGIN_1(O,LPCTSTR,iWord,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( ret = pObj->QueryKeyword(iWord) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [4] [自动] [2006-8-26 18:15:20]

    //$$CASE_END(QueryKeyword_LPCTSTR())

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





void CIdentifiersTester::UnwindMacro_LPCTSTR_CPageP_CTokenListR_POSITIONR()
{
    TEST_BEGIN(CIdentifiers::UnwindMacro(LPCTSTR,CPage*,CTokenList&,POSITION&));
    CIdenItem* ret;

    //$$CASE_BEGIN(UnwindMacro_LPCTSTR_CPageP_CTokenListR_POSITIONR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iWord      = "int";
    CPage ipPage("cpp.h");
    CTokenList ioList;
    POSITION ioPos     = ioList.GetHeadPosition();
    TEST_RUN( ret = pObj->UnwindMacro(iWord, &ipPage, ioList, ioPos) );
    TEST_ASSERT( ret == NULL );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-9-1 17:33:6]

    //??BVTEST_BEGIN_4(O,LPCTSTR,iWord,R,0,CPage,ipPage,P,0,CTokenList,ioList,R,0,POSITION,ioPos,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( ret = pObj->UnwindMacro(iWord, ipPage, ioList, ioPos) );
    //TEST_ASSERT();
    //??BVTEST_END(O,4)
    //$$ [2] [自动] [2006-9-1 17:33:6]

    //$$CASE_END(UnwindMacro_LPCTSTR_CPageP_CTokenListR_POSITIONR())

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

⌨️ 快捷键说明

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