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

📄 testdata2.cxx

📁 RTP协议
💻 CXX
📖 第 1 页 / 共 3 页
字号:
      {         CopyOnWriteData d("qwerty");         LocalScopeAllocator lo;         assert(strcmp(d.getData(lo), "qwerty") == 0);      }      {         CopyOnWriteData e;         LocalScopeAllocator lo;         assert(strcmp(e.getData(lo), "") == 0);      }         {         CopyOnWriteData d("qwerty");         assert(strcmp(d.logData(), "qwerty") == 0);      }      {         CopyOnWriteData e;         assert(strcmp(e.logData(), "") == 0);      }         {         CopyOnWriteData c = "sadfsdf";         CopyOnWriteData d;         d = c;         assert(c == d);      }      {         string f("asdasd");         CopyOnWriteData d = f;         assert(d == f);      }      {         string f("asdasd");         CopyOnWriteData d = f;         assert(d.logData() == f);      }      {         CopyOnWriteData d("123");         assert(d.length() == 3);      }      {         CopyOnWriteData d("123");         assert(d[0] == '1');         assert(d[1] == '2');         assert(d[2] == '3');      }      {         CopyOnWriteData d;         d.setBufferSize(7);         d = "123456";         assert(d.length() == 6);      }      {         CopyOnWriteData d("theSame1");         //assert(d.compare("theSame2", 7) == 0);      }      {         CopyOnWriteData d("thesame1");         string s("theSame2");         //assert(d.compareNoCase(s.c_str(), s.size()-1) == 0);      }      {         CopyOnWriteData d("theSame1");         CopyOnWriteData e("thesame1");         d.compareNoCase(e);      }      {         CopyOnWriteData d("one");         CopyOnWriteData c("two");         d += c;         assert(d == "onetwo");         CopyOnWriteData empt;         assert(empt + d == d);         assert(empt + d == "onetwo");         assert(empt + "three" == "three");      }      {         CopyOnWriteData a("one");         CopyOnWriteData b("two");         CopyOnWriteData c("three");               assert(a+b+c == "onetwothree");      }         {         CopyOnWriteData d("one");         cerr << "one + two = " << (d + "two") << endl;         assert((d + "two") == "onetwo");      }      {         CopyOnWriteData d("asdasdasd");         d.erase();         assert(d.length() == 0);      }      {         CopyOnWriteData d("asdasdasd");         string s = d.convertString();         assert(s == "asdasdasd");      }      {         CopyOnWriteData ten("10");         assert(ten.convertInt() == 10);         CopyOnWriteData neg11(-11);         //assert(-11 == neg11.convertInt());         CopyOnWriteData zero("0");         assert(0 == zero.convertInt());         CopyOnWriteData fr("fribble");         assert(0 == fr.convertInt());         CopyOnWriteData e;         //assert(0 == e.convertInt());      }      {         cerr << "!MatchNoReplace!" << endl;         CopyOnWriteData d("beforeZZafter");         CopyOnWriteData res;         int k = d.match("ZZ", &res);         cerr << "Retval: " << k << " res: " << res << " orig: " << d << endl;         assert(res == "before");         assert(d == "beforeZZafter");         assert(k == FOUND);      }      {         cerr << "!MatchReplace!" << endl;         CopyOnWriteData d("beforeZZafter");         CopyOnWriteData res;         int k = d.match("ZZ", &res, true, "YYY");         cerr << "Retval: " << k << " res: " << res << " orig: " << d << endl;         assert(res == "before");         assert(d == "YYYafter");         assert(k == FOUND);      }      {         cerr << "!MatchNotFound!" << endl;         CopyOnWriteData d("beforeZZafter");         CopyOnWriteData res;         int k = d.match("qq", &res);         cerr << "Retval: " << k << " res: " << " orig: " << d << endl;         assert(res == "");         assert(d == "beforeZZafter");         assert(k == NOT_FOUND);      }      {         cerr << "!MatchNotFound!" << endl;         CopyOnWriteData d("beforeZZafter");         CopyOnWriteData res;         int k = d.match("qq", &res);         cerr << "Retval: " << k << " res: " << " orig: " << d << endl;         assert(res == "");         assert(d == "beforeZZafter");         assert(k == NOT_FOUND);      }      {         cerr << "!MatchFirst!" << endl;         CopyOnWriteData d("ZZbeforeafter");         CopyOnWriteData res;         int k = d.match("ZZ", &res);         cerr << "Retval: " << k << " res: " << " orig: " << d << endl;         assert(res == "");         assert(d == "ZZbeforeafter");         assert(k == FIRST);      }      {         cerr << "!MatchFirstReplace!" << endl;         CopyOnWriteData d("ZZZZbeforeafter");         CopyOnWriteData res;         int k = d.match("ZZZZ", &res, true, "QQQ");         cerr << "Retval: " << k << " res: " << res << " orig: " << d << endl;         assert(res == "");         assert(d == "QQQbeforeafter");         assert(k == FIRST);      }      {         cerr << "parse test" << endl;         CopyOnWriteData d("STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parse("ij", &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parse test fail" << endl;         CopyOnWriteData d("STUFFiiiiiMORE STUFFi");         bool matchFail;         CopyOnWriteData result = d.parse("kj", &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "STUFFiiiiiMORE STUFFi");      }      {         cerr << "parseOutsideQuotes" << endl;         CopyOnWriteData d("STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("ij", true, false, &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parseOutsideQuotes test fail" << endl;         CopyOnWriteData d("STUFFiiiiiMORE STUFFi");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("kj", true, false, &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "STUFFiiiiiMORE STUFFi");      }      {         cerr << "parseOutsideQuotes, quotes" << endl;         CopyOnWriteData d("\"iiiiiiNOPEjjjjjj\"STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("ij", true, false, &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "\"iiiiiiNOPEjjjjjj\"STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parseOutsideQuotes test fail, quotes" << endl;         CopyOnWriteData d("\"iiiiiiNOPEjjjjjj\"STUFFiiiiiMORE STUFFii");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("kj", true, false, &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "\"iiiiiiNOPEjjjjjj\"STUFFiiiiiMORE STUFFii");      }      {         cerr << "parseOutsideQuotes, <>" << endl;         CopyOnWriteData d("<iiiiiiNOPEjjjjjj>STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("ij", false, true, &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "<iiiiiiNOPEjjjjjj>STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parseOutsideQuotes test fail, <>" << endl;         CopyOnWriteData d("<iiiiiiNOPEjjjjjj>STUFFiiiiiMORE STUFFii");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("kj", false, true, &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "<iiiiiiNOPEjjjjjj>STUFFiiiiiMORE STUFFii");      }      {         cerr << "parseOutsideQuotes, <\"\">" << endl;         CopyOnWriteData d("<\"iiiiiiNOPEjjjjjj\">STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("ij", false, true, &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "<\"iiiiiiNOPEjjjjjj\">STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parseOutsideQuotes test fail, <\"\">" << endl;         CopyOnWriteData d("<\"iiiiiiNOPEjjjjjj\">STUFFiiiiiMORE STUFFii");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("kj", false, true, &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "<\"iiiiiiNOPEjjjjjj\">STUFFiiiiiMORE STUFFii");      }      {         cerr << "matchChar" << endl;         CopyOnWriteData d("SKIPiiiiiMORE STUFFi");         bool matchFail;         CopyOnWriteData result = d.parse("ij", &matchFail);         assert(!matchFail);         assert(result == "SKIP");         assert(d == "MORE STUFFi");      }      {         cerr << "parseOutsideQuotes, \"<>\"" << endl;         CopyOnWriteData d("\"<iiiiiiNOPEjjjjjj>\"STUFFijijijMORE STUFFij");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("ij", true, false, &matchFail);         cerr << "result = " << result << endl;         cerr << "rest = " << d << endl;         assert(!matchFail);         assert(result == "\"<iiiiiiNOPEjjjjjj>\"STUFF");         assert(d == "MORE STUFFij");      }      {         cerr << "parseOutsideQuotes test fail, \"<>\"" << endl;         CopyOnWriteData d("\"<iiiiiiNOPEjjjjjj>\"STUFFiiiiiMORE STUFFii");         bool matchFail;         CopyOnWriteData result = d.parseOutsideQuotes("kj", true, false, &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "\"<iiiiiiNOPEjjjjjj>\"STUFFiiiiiMORE STUFFii");      }      {         cerr << "matchChar" << endl;         CopyOnWriteData d("SKIPiiiiiMORE STUFFi");         bool matchFail;         CopyOnWriteData result = d.parse("ij", &matchFail);         assert(!matchFail);         assert(result == "SKIP");         assert(d == "MORE STUFFi");      }      {         cerr << "matchChar" << endl;         CopyOnWriteData d("SKIPiiiiiMORE STUFFi");         bool matchFail;         CopyOnWriteData result = d.parse("kj", &matchFail);         assert(matchFail);         assert(result == "");         assert(d == "SKIPiiiiiMORE STUFFi");      }      {         cerr << "getLine" << endl;         bool matchFail;         CopyOnWriteData d("line 1\r\nline 2\r\nline 3\r\n");               CopyOnWriteData line1 = d.getLine(&matchFail);         assert(!matchFail);         assert(line1 == "line 1");         CopyOnWriteData line2 = d.getLine(&matchFail);         assert(!matchFail);         assert(line2 == "line 2");         CopyOnWriteData line3 = d.getLine(&matchFail);         assert(!matchFail);         assert(line3 == "line 3");         CopyOnWriteData line4 = d.getLine(&matchFail);         assert(matchFail);         assert(line4 == "");      }      {         cerr << "removeSpaces" << endl;         CopyOnWriteData d("         SPACES        ");         d.removeSpaces();         assert(d == "SPACES");         d.removeSpaces();         assert(d == "SPACES");         CopyOnWriteData b("      BEFORE");         b.removeSpaces();         assert(b == "BEFORE");         CopyOnWriteData a("AFTER     ");         a.removeSpaces();         assert(a == "AFTER");         CopyOnWriteData e("             ");         e.removeSpaces();         assert(e == "");      }      {         cerr << "substring" << endl;         CopyOnWriteData d("123456789");         assert(d.substring(3, 5) == "45");         assert(d.substring(3, -1) == "456789");         assert(d.substring(3, 3) == "");         assert(d.substring(0, 3) == "123");         assert(d.substring(0, 0) == "");         assert(d.substring(0, -1) == d);      }      {         cerr << "isEqualNoCase" << endl;         assert(isEqualNoCase(CopyOnWriteData("MIxed"), CopyOnWriteData("mixed")));         assert(isEqualNoCase(CopyOnWriteData(""), CopyOnWriteData("")));         assert(!isEqualNoCase(CopyOnWriteData(""), CopyOnWriteData("a")));         assert(!isEqualNoCase(CopyOnWriteData("b"), CopyOnWriteData("a")));         assert(isEqualNoCase("MIxed", CopyOnWriteData("mixed")));         assert(isEqualNoCase("", CopyOnWriteData("")));         assert(!isEqualNoCase("", CopyOnWriteData("a")));         assert(!isEqualNoCase("b", CopyOnWriteData("a")));      }   }}

⌨️ 快捷键说明

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