what's wrong with config*
[debian/mimetic.git] / test / t.tokenizer.cxx
1 #include "t.tokenizer.h"
2 #include <string>
3
4 namespace mimetic
5 {
6 using namespace std;
7
8 test_item<2> test_tokenizer::test_2[] = { 
9     { "uno/due", "/", {"uno", "due"} }, 
10     { "uno/", "/", { "uno", "" } },
11     { "/due", "/", {"", "due"} },
12     { "/", "/", { "", "" } },    
13     { "", "/", { "", "" } },
14
15     { "uno/due;", "/;", {"uno", "due"} },
16     { "uno/", "/;", { "uno", "" } },
17     { "/due", "/;", {"", "due"} },
18     { "/", "/;", { "", "" } },    
19     { "", "/;", { "", "" } },
20
21     { "uno;due", ",;", {"uno", "due"} },
22     { "uno,due", ",;", {"uno", "due"} },
23     { "unodue", ",;", {"unodue", ""} },
24     { ";unodue", ",;", {"", "unodue"} },
25     { 0,0, {0} }
26
27     };
28
29 void test_tokenizer::testTwo()
30 {
31     for(int i =0 ; test_2[i].input != 0; ++i)
32     {
33         const int pc = test_item<2>::part_count;
34         string ss, input;
35         input = test_2[i].input;
36         StringTokenizer stok(&input, test_2[i].delims);
37         for(int t =0; t < pc; ++t)
38         {
39             stok.next(ss);
40             TEST_ASSERT_EQUALS(ss, test_2[i].part[t]);
41         }
42     }
43 }
44
45 }