// ---------------------------------------------------------------------------- // String.h bool Test_String() { TTRACE(_T("=====================================================")); // StrRCSpn テスト。 { const TCHAR* strCharSet = _T("abc"); int ret; const TCHAR* str1 = _T("nakayama"); ret = StrRCSpn(str1, strCharSet); if (ret != 7) { TTRACE(_T("StrRCSpn# failed! ret=%d"), ret); return false; } const TCHAR* str2 = _T("erio"); ret = StrRCSpn(str2, strCharSet); if (ret != -1) { TTRACE(_T("StrRCSpn# failed! ret=%d"), ret); return false; } const TCHAR* str3 = _T("nakayama erio"); ret = StrRCSpn(str3, strCharSet); if (ret != 7) { TTRACE(_T("StrRCSpn# failed! ret=%d"), ret); return false; } } // StrRStr テスト。 { const TCHAR* result = NULL; const TCHAR* str1 = _T("Romancing SaGa, SaGa Frontier, Unlimited SaGa"); result = StrRStr(str1, _T("SaGa")); if (result == NULL || _tcscmp(_T("SaGa"), result) != 0) { TTRACE(_T("StrRStr# failed! result=%s"), result); return false; } const TCHAR* str2 = _T("Romancing SaGa, SaGa Frontier, Unlimited SaGa, Romancing SaGa -Minstrel Song-"); result = StrRStr(str2, _T("SaGa")); if (result == NULL || _tcscmp(_T("SaGa -Minstrel Song-"), result) != 0) { TTRACE(_T("StrRStr# failed! result=%s"), result); return false; } result = StrRStr(str2, _T("Itoken")); if (result != NULL) { TTRACE(_T("StrRStr# failed! result=%s"), result); return false; } } // Tokens テスト。 { Tokens<TCHAR> tokens; tokens.Set(_T("I love \"Romancing SaGa\" (Super Famicom software)"), _T(" "), _T("\"\"()")); TString token; if (!tokens.Next(token) || token.compare(_T("I")) != 0) { TTRACE(_T("Tokens# failed! result=%s"), token.c_str()); return false; } if (!tokens.Next(token) || token.compare(_T("love")) != 0) { TTRACE(_T("Tokens# failed! result=%s"), token.c_str()); return false; } if (!tokens.Next(token) || token.compare(_T("Romancing SaGa")) != 0) { TTRACE(_T("Tokens# failed! result=%s"), token.c_str()); return false; } if (!tokens.Next(token) || token.compare(_T("Super Famicom software")) != 0) { TTRACE(_T("Tokens# failed! result=%s"), token.c_str()); return false; } if (tokens.Next(token)) { TTRACE(_T("Tokens# failed!")); return false; } if (tokens.Next(token)) { TTRACE(_T("Tokens# failed!")); return false; } } return true; }