]> git.saurik.com Git - wxWidgets.git/blobdiff - tests/strings/tokenizer.cpp
increase min size to make all scrollbar controls visible
[wxWidgets.git] / tests / strings / tokenizer.cpp
index 4bb97f3f81762649c8598ed0e0390f4ac4a2f4fe..788177b9eb4bd3db0b633fea4e528105c367a4de 100644 (file)
@@ -36,11 +36,13 @@ private:
     CPPUNIT_TEST_SUITE( TokenizerTestCase );
         CPPUNIT_TEST( GetCount );
         CPPUNIT_TEST( GetPosition );
+        CPPUNIT_TEST( LastDelimiter );
         CPPUNIT_TEST( StrtokCompat );
     CPPUNIT_TEST_SUITE_END();
 
     void GetCount();
     void GetPosition();
+    void LastDelimiter();
     void StrtokCompat();
 
     DECLARE_NO_COPY_CLASS(TokenizerTestCase)
@@ -75,6 +77,13 @@ gs_testData[] =
     { _T(""),                   _T(" "),              wxTOKEN_DEFAULT,       0 },
     { _T(""),                   _T(" "),              wxTOKEN_RET_EMPTY,     0 },
     { _T(""),                   _T(" "),              wxTOKEN_RET_EMPTY_ALL, 0 },
+    { _T(""),                   _T(" "),              wxTOKEN_RET_DELIMS,    0 },
+    { _T(":"),                  _T(":"),              wxTOKEN_RET_EMPTY,     1 },
+    { _T(":"),                  _T(":"),              wxTOKEN_RET_DELIMS,    1 },
+    { _T(":"),                  _T(":"),              wxTOKEN_RET_EMPTY_ALL, 2 },
+    { _T("::"),                 _T(":"),              wxTOKEN_RET_EMPTY,     1 },
+    { _T("::"),                 _T(":"),              wxTOKEN_RET_DELIMS,    1 },
+    { _T("::"),                 _T(":"),              wxTOKEN_RET_EMPTY_ALL, 3 },
 
     { _T("Hello, world"),       _T(" "),              wxTOKEN_DEFAULT,       2 },
     { _T("Hello,   world  "),   _T(" "),              wxTOKEN_DEFAULT,       2 },
@@ -177,6 +186,23 @@ void TokenizerTestCase::GetPosition()
     DoTestGetPosition(_T("foo_bar_"), _T("_"), 4, 8, 0);
 }
 
+void TokenizerTestCase::LastDelimiter()
+{
+    wxStringTokenizer tkz(_T("a+-b=c"), _T("+-="));
+
+    tkz.GetNextToken();
+    CPPUNIT_ASSERT_EQUAL( _T('+'), tkz.GetLastDelimiter() );
+
+    tkz.GetNextToken();
+    CPPUNIT_ASSERT_EQUAL( _T('-'), tkz.GetLastDelimiter() );
+
+    tkz.GetNextToken();
+    CPPUNIT_ASSERT_EQUAL( _T('='), tkz.GetLastDelimiter() );
+
+    tkz.GetNextToken();
+    CPPUNIT_ASSERT_EQUAL( _T('\0'), tkz.GetLastDelimiter() );
+}
+
 void TokenizerTestCase::StrtokCompat()
 {
     for ( size_t n = 0; n < WXSIZEOF(gs_testData); n++ )