git-svn-id: svn://ultimatepp.org/upp/trunk@7084 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2014-03-24 14:34:35 +00:00
parent 898f3008e4
commit 2a8a97e7cb

View file

@ -13,6 +13,12 @@ void Check(T haystack, T needle, int pos)
DUMP(haystack.Find(needle));
NEVER();
}
if(haystack.Find(needle + '!') >= 0) {
DUMP(haystack);
DUMP(needle + '!');
DUMP(haystack.Find(needle));
NEVER();
}
if(haystack.ReverseFind(needle) != pos) {
DUMP(haystack);
DUMP(needle);
@ -24,6 +30,7 @@ void Check(T haystack, T needle, int pos)
template <class T>
void Check()
{
for(int l = 0; l < 30; l++) {
for(int r = 0; r < 30; r++) {
LOG(l << ":" << r);
@ -40,12 +47,29 @@ void Check()
ASSERT(T("test").Find("x") < 0);
}
template <class T>
void CheckReplace()
{
T x("Just a test");
x.Replace(" a ", " another ");
DUMP(x);
ASSERT(x == T("Just another test"));
x = T('_', 5) + x + T('_', 5) + x + T('_', 5);
DUMP(x);
x.Replace("test", "run");
DUMP(x);
T y("Just another run");
ASSERT(x == T('_', 20) + y + T('_', 20) + y + T('_', 20));
}
CONSOLE_APP_MAIN
{
StdLogSetup(LOG_COUT|LOG_FILE);
String x("aaaaaxxxxxxxxx");
int pos = x.Find(String("aaaaxxxxxxxxx"));
CheckReplace<String>();
CheckReplace<WString>();
Check<String>();
Check<WString>();