1 package org.codehaus.plexus.util.cli;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import org.junit.jupiter.api.Test;
20
21 import static org.junit.jupiter.api.Assertions.assertEquals;
22 import static org.junit.jupiter.api.Assertions.assertFalse;
23 import static org.junit.jupiter.api.Assertions.fail;
24
25
26
27
28
29
30
31
32 public class EnhancedStringTokenizerTest {
33
34
35
36 @org.junit.jupiter.api.Test
37 public void test1() {
38 EnhancedStringTokenizer est = new EnhancedStringTokenizer("this is a test string");
39 StringBuilder sb = new StringBuilder();
40 while (est.hasMoreTokens()) {
41 sb.append(est.nextToken());
42 sb.append(" ");
43 }
44 assertEquals("this is a test string ", sb.toString());
45 }
46
47
48
49
50 @Test
51 public void test2() {
52 EnhancedStringTokenizer est = new EnhancedStringTokenizer("1,,,3,,4", ",");
53 assertEquals("1", est.nextToken(), "Token 1");
54 assertEquals("", est.nextToken(), "Token 2");
55 assertEquals("", est.nextToken(), "Token 3");
56 assertEquals("3", est.nextToken(), "Token 4");
57 assertEquals("", est.nextToken(), "Token 5");
58 assertEquals("4", est.nextToken(), "Token 6");
59 }
60
61
62
63
64 @org.junit.jupiter.api.Test
65 public void test3() {
66 EnhancedStringTokenizer est = new EnhancedStringTokenizer("1,,,3,,4", ",", true);
67 assertEquals("1", est.nextToken(), "Token 1");
68 assertEquals(",", est.nextToken(), "Token 2");
69 assertEquals("", est.nextToken(), "Token 3");
70 assertEquals(",", est.nextToken(), "Token 4");
71 assertEquals("", est.nextToken(), "Token 5");
72 assertEquals(",", est.nextToken(), "Token 6");
73 assertEquals("3", est.nextToken(), "Token 7");
74 assertEquals(",", est.nextToken(), "Token 8");
75 assertEquals("", est.nextToken(), "Token 9");
76 assertEquals(",", est.nextToken(), "Token 10");
77 assertEquals("4", est.nextToken(), "Token 11");
78 }
79
80
81
82
83 @org.junit.jupiter.api.Test
84 public void testMultipleDelim() {
85 EnhancedStringTokenizer est = new EnhancedStringTokenizer("1 2|3|4", " |", true);
86 assertEquals("1", est.nextToken(), "Token 1");
87 assertEquals(" ", est.nextToken(), "Token 2");
88 assertEquals("2", est.nextToken(), "Token 3");
89 assertEquals("|", est.nextToken(), "Token 4");
90 assertEquals("3", est.nextToken(), "Token 5");
91 assertEquals("|", est.nextToken(), "Token 6");
92 assertEquals("4", est.nextToken(), "Token 7");
93 assertFalse(est.hasMoreTokens(), "est.hasMoreTokens()");
94 }
95
96
97
98
99 @org.junit.jupiter.api.Test
100 public void testEmptyString() {
101 EnhancedStringTokenizer est = new EnhancedStringTokenizer("");
102 assertFalse(est.hasMoreTokens(), "est.hasMoreTokens()");
103 try {
104 est.nextToken();
105 fail();
106 } catch (Exception e) {
107 }
108 }
109
110
111
112
113 @org.junit.jupiter.api.Test
114 public void testSimpleString() {
115 EnhancedStringTokenizer est = new EnhancedStringTokenizer("a ");
116 assertEquals("a", est.nextToken(), "Token 1");
117 assertEquals("", est.nextToken(), "Token 2");
118 assertFalse(est.hasMoreTokens(), "est.hasMoreTokens()");
119 }
120 }