]> code.citadel.org Git - citadel.git/blobdiff - libcitadel/tests/stringbuf_test.c
* fix it some, but not all.
[citadel.git] / libcitadel / tests / stringbuf_test.c
index 48143b8ade57ac4bf0c03c2332b31c894360cde5..24d4ee0820df92e3854a1d4a74c0ca349197b371 100644 (file)
@@ -114,9 +114,37 @@ static void TestCreateBuf(void)
        CU_ASSERT(StrBufIsNumber(Buf) == 1);
 
        
-       
 }
 
+
+static void TestNextTokenizer(void)
+{
+       const char *pCh = NULL;
+       StrBuf *Buf;
+       StrBuf *Buf2;
+       long CountTokens = 0;
+       long HaveNextToken;
+       long HaveNextTokenF;
+
+       Buf = NewStrBufPlain(HKEY("abc,abc, 1, ,,"));
+       printf("\nTemplate: >%s<\n", ChrPtr(Buf));
+                            
+       Buf2 = NewStrBuf();
+       do
+       {
+               HaveNextTokenF = StrBufExtract_NextToken(Buf2, Buf, &pCh, ',');
+               printf("Token: >%s< >%s<\n", ChrPtr(Buf2), pCh);
+               CountTokens++;
+               HaveNextToken = StrBufHaveNextToken(Buf2, &pCh);
+               CU_ASSERT(HaveNextToken == 1);
+               
+               CU_ASSERT(CountTokens < 7);
+       } 
+       while (HaveNextTokenF);
+}
+
+
+
 static void testSuccessAssertTrue(void)
 {
        CU_ASSERT_TRUE(CU_TRUE);
@@ -245,6 +273,8 @@ static void AddStrBufSimlpeTests(void)
        pGroup = CU_add_suite("TestStringBufSimpleAppenders", NULL, NULL);
        pTest = CU_add_test(pGroup, "testCreateBuf", TestCreateBuf);
 
+       pGroup = CU_add_suite("TestStringTokenizer", NULL, NULL);
+       pTest = CU_add_test(pGroup, "testNextTokenizer", TestNextTokenizer);
 
 
 /*