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

📄 ctokentester.cpp

📁 这是一个能够自动生成文档的程序
💻 CPP
📖 第 1 页 / 共 2 页
字号:
/**************************************************
//$$ BEGIN
LPCTSTR@@0@2@""$0
int@INT4@0@5@-2147483647$-1$0$1$2147483647
char@TCHAR$signed_char@0@5@-128$-1$0$1$127
CString@@0@3@"Visual Unit"$""$"中文怎么样?"
//$$ END
**************************************************/


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

#include "stdafx.h"
//
/////////////////////////////////////////////////////////////////////////////
#include "CTokenTester.h"

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

void CTokenTester::ClassTest()
{
    TEST_SOURCE_NAME(Token.cpp);
    CUSTOM_TEST(CToken);
 
    //$$
    TEST_CALL_BEGIN(CToken,1,0)
    TEST_CALL1(CopyContent_LPCTSTR_int())//CopyContent(LPCTSTR,int)
    TEST_CALL1(CopyContent_LPCTSTR_int_LPCTSTR())//CopyContent(LPCTSTR,int,LPCTSTR)
    TEST_CALL1(CatContent_LPCTSTR())//CatContent(LPCTSTR)
    TEST_CALL1(ReadWord_LPCTSTR())//ReadWord(LPCTSTR)
    TEST_CALL1(ReadDigit_LPCTSTR())//ReadDigit(LPCTSTR)
    TEST_CALL1(ReadSingleLineComment_LPCTSTR())//ReadSingleLineComment(LPCTSTR)
    TEST_CALL1(ReadMulLineComment_LPCTSTR())//ReadMulLineComment(LPCTSTR)
    TEST_CALL1(ReadString_LPCTSTR())//ReadString(LPCTSTR)
    TEST_CALL1(ReadWString_LPCTSTR())//ReadWString(LPCTSTR)
    TEST_CALL1(ReadChar_LPCTSTR())//ReadChar(LPCTSTR)
    TEST_CALL1(ReadWChar_LPCTSTR())//ReadWChar(LPCTSTR)
    TEST_CALL1(IsBeginOfWord_char())//IsBeginOfWord(char)
    TEST_CALL1(CleanupComment_CStringR())//CleanupComment(CString&)
    TEST_CALL_END()
    //$$
}

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

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

CTokenTester::~CTokenTester()
{

}

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

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

    }
}

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

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

void CTokenTester::CustomTest()
{

}

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



















void CTokenTester::CopyContent_LPCTSTR_int()
{
    TEST_BEGIN(CToken::CopyContent(LPCTSTR,int));

    //$$CASE_BEGIN(CopyContent_LPCTSTR_int())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abdeekde";
    int iLen        = 2;
    TEST_RUN( pObj->CopyContent(ipCode, iLen) );
    TEST_ASSERT( strcmp(pObj->mpContent, "ab") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-17 10:1:55]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abdeekde";
    int iLen        = 0;
    TEST_RUN( pObj->CopyContent(ipCode, iLen) );
    TEST_ASSERT( strcmp(pObj->mpContent, "") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-17 10:14:59]

    //??BVTEST_BEGIN_2(O,LPCTSTR,ipCode,R,0,int,iLen,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->CopyContent(ipCode, iLen) );
    //TEST_ASSERT();
    //??BVTEST_END(O,2)
    //$$ [3] [自动] [2006-8-17 10:1:55]

    //$$CASE_END(CopyContent_LPCTSTR_int())

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

void CTokenTester::CopyContent_LPCTSTR_int_LPCTSTR()
{
    TEST_BEGIN(CToken::CopyContent(LPCTSTR,int,LPCTSTR));

    //$$CASE_BEGIN(CopyContent_LPCTSTR_int_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abcdedeee";
    int iLen        = 3;
    LPCTSTR iHead   = "L\"";
    LPCTSTR out = "L\"abc";
    TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    TEST_ASSERT( strcmp(pObj->mpContent, out) == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-17 10:7:41]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abcdedeee";
    int iLen        = 3;
    LPCTSTR iHead   = "";
    LPCTSTR out = "abc";
    TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    TEST_ASSERT( strcmp(pObj->mpContent, out) == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-17 10:11:42]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abcdedeee";
    int iLen        = 3;
    LPCTSTR iHead   = NULL;
    LPCTSTR out = "abc";
    TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    TEST_ASSERT( strcmp(pObj->mpContent, out) == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-17 10:12:1]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "abcdedeee";
    int iLen        = 0;
    LPCTSTR iHead   = NULL;
    LPCTSTR out = "";
    TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    TEST_ASSERT( strcmp(pObj->mpContent, out) == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-17 10:12:20]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "";
    int iLen        = 0;
    LPCTSTR iHead   = "";
    LPCTSTR out = "";
    TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    TEST_ASSERT( strcmp(pObj->mpContent, out) == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-17 10:14:16]

    //??BVTEST_BEGIN_3(O,LPCTSTR,ipCode,R,0,int,iLen,R,0,LPCTSTR,iHead,R,1)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->CopyContent(ipCode, iLen, iHead) );
    //TEST_ASSERT();
    //??BVTEST_END(O,3)
    //$$ [6] [自动] [2006-8-17 10:7:41]

    //$$CASE_END(CopyContent_LPCTSTR_int_LPCTSTR())

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

void CTokenTester::CatContent_LPCTSTR()
{
    TEST_BEGIN(CToken::CatContent(LPCTSTR));

    //$$CASE_BEGIN(CatContent_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iCat  = "1.2.2";
    pObj->ReadWord("Visual");
    TEST_RUN( pObj->CatContent(iCat) );
    TEST_ASSERT( strcmp(pObj->GetContent(), "Visual1.2.2") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-24 14:29:36]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iCat  = "1.2.2";
    TEST_RUN( pObj->CatContent(iCat) );
    TEST_ASSERT( strcmp(pObj->GetContent(), "1.2.2") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-24 14:32:44]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR iCat  = NULL;
    TEST_RUN( pObj->CatContent(iCat) );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-24 14:36:48]

    //??BVTEST_BEGIN_1(O,LPCTSTR,iCat,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( pObj->CatContent(iCat) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [4] [自动] [2006-8-24 14:29:36]

    //$$CASE_END(CatContent_LPCTSTR())

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













































void CTokenTester::ReadWord_LPCTSTR()
{
    TEST_BEGIN(CToken::ReadWord(LPCTSTR));
    int ret;

    //$$CASE_BEGIN(ReadWord_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include( kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include2; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include2") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include2") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include_; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include_") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include_") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "include_2; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("include_2") );
    TEST_ASSERT( strcmp(pObj->mpContent, "include_2") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "_include_2; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("_include_2") );
    TEST_ASSERT( strcmp(pObj->mpContent, "_include_2") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [7] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "Abcd\\\nefg; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("Abcdefg") + 2 );
    TEST_ASSERT( strcmp(pObj->mpContent, "Abcdefg") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [8] [正常] [2006-8-27 22:15:19]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "Abcd\\efg; kae";
    TEST_RUN( ret = pObj->ReadWord(ipCode) );
    TEST_ASSERT( ret == strlen("Abcd") );
    TEST_ASSERT( strcmp(pObj->mpContent, "Abcd") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [9] [正常] [2006-8-27 22:15:19]

    //??BVTEST_BEGIN_1(O,LPCTSTR,ipCode,R,0)
    //自动边界测试用例,可用TEST_FILTER()过滤输入数据
    //TEST_FILTER();
    //??TEST_RUN( ret = pObj->ReadWord(ipCode) );
    //TEST_ASSERT();
    //??BVTEST_END(O,1)
    //$$ [10] [自动] [2006-8-27 22:15:19]

    //$$CASE_END(ReadWord_LPCTSTR())

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

void CTokenTester::ReadDigit_LPCTSTR()
{
    TEST_BEGIN(CToken::ReadDigit(LPCTSTR));
    int ret;

    //$$CASE_BEGIN(ReadDigit_LPCTSTR())

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "123.456 kde";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("123.456") );
    TEST_ASSERT( strcmp(pObj->mpContent, "123.456") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_DOUBLE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [1] [正常] [2006-8-27 22:16:30]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "0x12AB03 rr";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("0x12AB03") );
    TEST_ASSERT( strcmp(pObj->mpContent, "0x12AB03") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_INT );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [2] [正常] [2006-8-27 22:16:30]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "123E-1 dk";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("123E-1") );
    TEST_ASSERT( strcmp(pObj->mpContent, "123E-1") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_DOUBLE );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [3] [正常] [2006-8-27 22:16:30]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "0x123E-1 dk";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("0x123E") );
    TEST_ASSERT( strcmp(pObj->mpContent, "0x123E") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_INT );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [4] [正常] [2006-9-6 15:46:44]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "123L dd";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("123L") );
    TEST_ASSERT( strcmp(pObj->mpContent, "123L") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_LONG );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [5] [正常] [2006-8-27 22:16:30]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "123LU dd";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("123LU") );
    TEST_ASSERT( strcmp(pObj->mpContent, "123LU") == 0 );
    TEST_ASSERT( pObj->mSubType == TTS_UNSIGNED_LONG );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [6] [正常] [2006-9-6 16:13:9]

    /// 
    TEST_CASE_BEGINO( ARG_DEFAULT );
    LPCTSTR ipCode  = "12\\\n3L dd";
    TEST_RUN( ret = pObj->ReadDigit(ipCode) );
    TEST_ASSERT( ret == strlen("123L") + 2 );
    TEST_ASSERT( strcmp(pObj->mpContent, "123L") == 0 );
    TEST_CASE_ENDO( ARG_DEFAULT );
    //$$ [7] [正常] [2006-8-27 22:16:30]

    /// 

⌨️ 快捷键说明

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