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

📄 component.cpp

📁 epson usb2.0 控制芯片 S1R72V05 固件程序。
💻 CPP
📖 第 1 页 / 共 4 页
字号:
                     TEST_FAIL;
            } END_CASE;
        } END_CASE;

        BEGIN_CASE("7","Component::is_valid偑false偺偲偒偼幚峴偝傟側偄") {
            chain.renewInstance();

            bool result = true;
            TestComponent test;
            test.activation = true;

            Component::is_valid = false;
            Exception::setThrowControl(true);
            try { executeComponents(getOptionParameter()); }
            catch(...) { result = false; }

            BEGIN_CASE("1","椺奜偼婲偙傜側偄") {
                if(!result)
                    TEST_FAIL;
            } END_CASE;

            BEGIN_CASE("2","parseOption/body偼幚峴偝傟側偄") {
                 if(test.check_parseOption || test.check_body || test.check_onFatalExit)
                     TEST_FAIL;
            } END_CASE;

            Component::is_valid = true;
        } END_CASE;
    } END_CASE;

    BEGIN_CASE("_parseCommonOption","_parseCommonOption") {

        BEGIN_CASE("1", "-debug偱DebugMessage偑桳岠偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "-debug" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(!DebugMessage::getVerbose())
                TEST_FAIL;

        } END_CASE;

        BEGIN_CASE("2", "-v 偱VerboseMessage偑桳岠偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "-v" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(!VerboseMessage::getVerbose())
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("3", "--verbose偱VerboseMessage偑桳岠偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "--verbose" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(!VerboseMessage::getVerbose())
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("4", "-lj 偱Message偑擔杮岅偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "-lj" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(Message::getCurrentLanguage() != Message::JAPANESE)
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("5", "--japanese 偱Message偑擔杮岅偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "--japanese" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(Message::getCurrentLanguage() != Message::JAPANESE)
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("6", "-le 偱Message偑塸岅偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "-le" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(Message::getCurrentLanguage() != Message::ENGLISH)
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("7", "--english 偱Message偑塸岅偵側傞") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "--english" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            Component::_parseCommonOption(param);

            if(Message::getCurrentLanguage() != Message::ENGLISH)
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("8","僿儖僾偑偱傞 (-h)") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "-h" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            cout.str("");
            Component::_parseCommonOption(param);

                //偲傝偁偊偢壗偐弌椡偝傟偰偄傞偙偲偩偗妋擣偟偰偍偔
            if(cout.str().empty())
                TEST_FAIL;
        } END_CASE;

        BEGIN_CASE("9","僿儖僾偑偱傞 (--help)") {
            chain.renewInstance();

            char * argv[] = { "test.exe", "--help" };
            OptionParameter & param = getOptionParameter();

            param.parseOption(2, argv);
            cout.str("");
            Component::_parseCommonOption(param);

                //偲傝偁偊偢壗偐弌椡偝傟偰偄傞偙偲偩偗妋擣偟偰偍偔
            if(cout.str().empty())
                TEST_FAIL;
        } END_CASE;

    } END_CASE;

    BEGIN_CASE("getOption","僆僾僔儑儞僷儔儊乕僞偺庢摼") {
        chain.renewInstance();

        char * argv[] = { "test.exe","-test","param","-test2","param2", "--test","param3","--test2","param4" };
        getOptionParameter().parseOption(9, argv);

        BEGIN_CASE("1","getOption(test)偱param偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = getOption("test");
            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","僠僃僢僋嵪傒偱偁傞", item.isChecked());
            TEST_CASE("3","1偮偺僷儔儊乕僞傪傕偮", item.countParameter() == 1);
            TEST_CASE("4","僷儔儊乕僞偺撪梕偑偁偭偰偄傞", item[0].compare("param") == 0);
        } END_CASE;

        BEGIN_CASE("2","getOption(test,test)偱2偮偺楢寢偑庢傟傞") {
            OptionParameter::OptionItem item;

            TEST_CASE("0","[慜採] --test偵僠僃僢僋偼偮偄偰偄側偄", !getOptionParameter().get("-test",false).isChecked());

            item = getOption("test","test");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","僠僃僢僋嵪傒偱偁傞", item.isChecked());
            TEST_CASE("3","僠僃僢僋嵪傒偱偁傞 (test)", getOptionParameter().get("test",false).isChecked());
            TEST_CASE("4","僠僃僢僋嵪傒偱偁傞 (-test)", getOptionParameter().get("-test",false).isChecked());
            TEST_CASE("5","2偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 2);
            TEST_CASE("6","1偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param") == 0);
            TEST_CASE("7","2偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[1].compare("param3") == 0);
        } END_CASE;

        BEGIN_CASE("3","getOption(test,unknown)偱test偺僷儔儊乕僞偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = getOption("test","unknown");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","1偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 1);
            TEST_CASE("3","僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param") == 0);
        } END_CASE;

        BEGIN_CASE("4","getOption(unknown,test)偱 -test偺僷儔儊乕僞偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = getOption("unknown","test");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","1偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 1);
            TEST_CASE("3","僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param3") == 0);
        } END_CASE;

        BEGIN_CASE("5","getOption(unknown,unknown)偱柍岠側傾僀僥儉偑曉傞") {
            OptionParameter::OptionItem item;

            item = getOption("unknown","unknown");

            TEST_CASE("1","柍岠側抣偑曉傞", !item.isValid());
        } END_CASE;

        BEGIN_CASE("6","getOption(test2,test2,false)偱僠僃僢僋偑偮偐側偄") {
            OptionParameter::OptionItem item;

            TEST_CASE("0","[慜採] -test2偵僠僃僢僋偼偮偄偰偄側偄", !getOptionParameter().get("test2",false).isChecked());
            TEST_CASE("0","[慜採] --test2偵僠僃僢僋偼偮偄偰偄側偄", !getOptionParameter().get("-test2",false).isChecked());

            item = getOption("test2","test2",false);

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","僠僃僢僋嵪傒偱側偄", !item.isChecked());
            TEST_CASE("3","僠僃僢僋嵪傒偱側偄 (test2)", !getOptionParameter().get("test2",false).isChecked());
            TEST_CASE("4","僠僃僢僋嵪傒偱側偄 (-test2)", !getOptionParameter().get("-test2",false).isChecked());
            TEST_CASE("5","2偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 2);
            TEST_CASE("6","1偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param2") == 0);
            TEST_CASE("7","2偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[1].compare("param4") == 0);
        } END_CASE;

    } END_CASE;

    BEGIN_CASE("findOption","僆僾僔儑儞僷儔儊乕僞偺庢摼") {
        chain.renewInstance();

        char * argv[] = { "test.exe","-test","param","--test","param3", "-noparam"};
        getOptionParameter().parseOption(6, argv);

        BEGIN_CASE("1","findOption(test,test)偱param偑庢傟傞") {
            string result;

            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (test)", !getOptionParameter().get("test",false).isChecked());
            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (-test)", !getOptionParameter().get("-test",false).isChecked());
            TEST_CASE("1","娭悢偼惉岟偡傞", findOption("test","test",&result));
            TEST_CASE("2","暥帤楍偵param偑曉傞", result.compare("param") == 0);
            TEST_CASE("3","僠僃僢僋嵪傒 (test)", getOptionParameter().get("test",false).isChecked());
            TEST_CASE("3","僠僃僢僋嵪傒 (-test)", getOptionParameter().get("-test",false).isChecked());
        } END_CASE;

        BEGIN_CASE("2","findOption(test,unknown)偱param偑庢傟傞") {
            string result;

            TEST_CASE("1","娭悢偼惉岟偡傞", findOption("test","unknown",&result));
            TEST_CASE("2","暥帤楍偵param偑曉傞", result.compare("param") == 0);
        } END_CASE;

        BEGIN_CASE("3","findOption(unknown,test)偱param3偑庢傟傞") {
            string result;

            TEST_CASE("1","娭悢偼惉岟偡傞", findOption("unknown","test",&result));
            TEST_CASE("2","暥帤楍偵param偑曉傞", result.compare("param3") == 0);
        } END_CASE;

        BEGIN_CASE("4","findOption(unknown,unknown)偱柍岠側傾僀僥儉偑曉傞") {
            string result;

            result.assign("dummy");

            TEST_CASE("1","娭悢偼幐攕偡傞", !findOption("unknown","unknown",&result));
            TEST_CASE("2","暥帤楍偼彂偒姺傢傜側偄", result.compare("dummy") == 0);
        } END_CASE;

        BEGIN_CASE("5","findOption(noparam,NULL,&result)") {
            string result;
            result.assign("dummy");

            TEST_CASE("1","娭悢偼惉岟偡傞", findOption("noparam", 0, &result));
            TEST_CASE("2","暥帤楍偼抲偒姺傢傜側偄", result.compare("dummy") == 0);
        } END_CASE;
    } END_CASE;

    BEGIN_CASE("checkOption","僆僾僔儑儞僷儔儊乕僞偺懚嵼妋擣 + 僠僃僢僋") {
        chain.renewInstance();

        char * argv[] = { "test.exe","-test","param","--test","param3", "-test2", "--test3"};
        getOptionParameter().parseOption(7, argv);

        BEGIN_CASE("1","checkOption(test,test)偱param偑庢傟傞") {
            string result;

            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (test)", !getOptionParameter().get("test",false).isChecked());
            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (-test)", !getOptionParameter().get("-test",false).isChecked());
            TEST_CASE("1","娭悢偼惉岟偡傞", checkOption("test","test"));
            TEST_CASE("2","僠僃僢僋嵪傒 (test)", getOptionParameter().get("test",false).isChecked());
            TEST_CASE("3","僠僃僢僋嵪傒 (-test)", getOptionParameter().get("-test",false).isChecked());
        } END_CASE;

        BEGIN_CASE("2","checkOption(test2,unknown)偱param偑庢傟傞") {
            string result;

            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (test2)", !getOptionParameter().get("test2",false).isChecked());
            TEST_CASE("1","娭悢偼惉岟偡傞", checkOption("test2","unknown"));
            TEST_CASE("2","僠僃僢僋嵪傒 (test2)", getOptionParameter().get("test2",false).isChecked());
        } END_CASE;

        BEGIN_CASE("3","checkOption(unknown,test3)偱param3偑庢傟傞") {
            string result;

            TEST_CASE("0","[慜採] 僠僃僢僋嵪傒偱偼側偄 (test3)", !getOptionParameter().get("-test3",false).isChecked());
            TEST_CASE("1","娭悢偼惉岟偡傞", checkOption("unknown","test3"));
            TEST_CASE("2","僠僃僢僋嵪傒 (test3)", getOptionParameter().get("-test3",false).isChecked());
        } END_CASE;

        BEGIN_CASE("4","checkOption(unknown,unknown)偱柍岠側傾僀僥儉偑曉傞") {
            string result;

            result.assign("dummy");

            TEST_CASE("1","娭悢偼幐攕偡傞", !checkOption("unknown","unknown"));
        } END_CASE;
    } END_CASE;

        /* mergeOption偺僠僃僢僋崁栚偼丄getOption偲傎傏摨偠 */
    BEGIN_CASE("mergeOption","僆僾僔儑儞僷儔儊乕僞偺寢崌") {
        chain.renewInstance();

        char * argv[] = { "test.exe","-test","param","-test2","param2", "--test","param3","--test2","param4" };
        getOptionParameter().parseOption(9, argv);

        BEGIN_CASE("1","mergeOption(test)偱param偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = mergeOption("test");
            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","僠僃僢僋嵪傒偱偁傞", item.isChecked());
            TEST_CASE("3","1偮偺僷儔儊乕僞傪傕偮", item.countParameter() == 1);
            TEST_CASE("4","僷儔儊乕僞偺撪梕偑偁偭偰偄傞", item[0].compare("param") == 0);
        } END_CASE;

        BEGIN_CASE("2","mergeOption(test,test)偱2偮偺楢寢偑庢傟傞") {
            OptionParameter::OptionItem item;

            TEST_CASE("0","[慜採] --test偵僠僃僢僋偼偮偄偰偄側偄", !getOptionParameter().get("-test",false).isChecked());

            item = mergeOption("test","test");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","僠僃僢僋嵪傒偱偁傞", item.isChecked());
            TEST_CASE("3","僠僃僢僋嵪傒偱偁傞 (test)", getOptionParameter().get("test",false).isChecked());
            TEST_CASE("4","僠僃僢僋嵪傒偱偁傞 (-test)", getOptionParameter().get("-test",false).isChecked());
            TEST_CASE("5","2偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 2);
            TEST_CASE("6","1偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param") == 0);
            TEST_CASE("7","2偮傔偺僷儔儊乕僞偺抣偼惓偟偄", item[1].compare("param3") == 0);
        } END_CASE;

        BEGIN_CASE("3","mergeOption(test,unknown)偱test偺僷儔儊乕僞偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = mergeOption("test","unknown");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","1偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 1);
            TEST_CASE("3","僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param") == 0);
        } END_CASE;

        BEGIN_CASE("4","mergeOption(unknown,test)偱 -test偺僷儔儊乕僞偑庢傟傞") {
            OptionParameter::OptionItem item;

            item = mergeOption("unknown","test");

            TEST_CASE("1","桳岠側抣偑曉傞", item.isValid());
            TEST_CASE("2","1偮偺僷儔儊乕僞傪帩偮", item.countParameter() == 1);
            TEST_CASE("3","僷儔儊乕僞偺抣偼惓偟偄", item[0].compare("param3") == 0);
        } END_CASE;

        BEGIN_CASE("5","mergeOption(unknown,unknown)偱柍岠側傾僀僥儉偑曉傞") {
            OptionParameter::OptionItem item;

            item = mergeOption("unknown","unknown");

            TEST_CASE("1","柍岠側抣偑曉傞", !item.isValid());
        } END_CASE;

    } END_CASE;

    chain.restoreContext();
}
#endif


⌨️ 快捷键说明

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