1 package org.davidmoten.text.utils;
2
3 import static org.junit.Assert.assertEquals;
4
5 import org.junit.Test;
6
7 public class StringBuilder2Test {
8
9 @Test
10 public void test() {
11 StringBuilder2 b = new StringBuilder2("abc");
12 assertEquals("abc", b.toString());
13 }
14
15 @Test
16 public void testSetLength() {
17 StringBuilder2 b = new StringBuilder2("abc");
18 b.setLength(2);
19 assertEquals("ab", b.toString());
20 }
21
22 @Test
23 public void testDelete() {
24 StringBuilder2 b = new StringBuilder2("abc");
25 b.delete(1, 2);
26 assertEquals("ac", b.toString());
27 }
28
29 @Test
30 public void testAppendChar() {
31 StringBuilder2 b = new StringBuilder2("abc");
32 b.append('d');
33 assertEquals("abcd", b.toString());
34 }
35
36 @Test
37 public void testAppendStringBuilder2() {
38 StringBuilder2 b = new StringBuilder2("abc");
39 StringBuilder2 c = new StringBuilder2("def");
40 b.append(c);
41 assertEquals("abcdef", b.toString());
42 }
43
44 @Test
45 public void testAppendStringBuilder2WithLongWord() {
46 StringBuilder2 b = new StringBuilder2("abc");
47 StringBuilder2 c = new StringBuilder2("defghijklmnopqrstuvwxyz");
48 b.append(c);
49 assertEquals("abcdefghijklmnopqrstuvwxyz", b.toString());
50 }
51
52 @Test
53 public void testBlank() {
54 StringBuilder2 a = new StringBuilder2();
55 a.append('a');
56 assertEquals(1, a.length());
57 assertEquals("a", a.toString());
58 }
59
60 @Test
61 public void testCharAt() {
62 StringBuilder2 b = new StringBuilder2("abc");
63 assertEquals('a', b.charAt(0));
64 assertEquals('b', b.charAt(1));
65 assertEquals('c', b.charAt(2));
66 }
67
68 @Test
69 public void testSubsequence() {
70 StringBuilder2 b = new StringBuilder2("abcdef");
71 assertEquals("abc", b.subSequence(0, 3).toString());
72 }
73
74 @Test
75 public void testSubsequence2() {
76 StringBuilder2 b = new StringBuilder2("abcdef");
77 assertEquals("bcd", b.subSequence(1, 4).toString());
78 }
79
80 @Test
81 public void testSubsequence3() {
82 StringBuilder2 b = new StringBuilder2("abcdef");
83 assertEquals("abcdef", b.subSequence(0, 6).toString());
84 }
85
86 @Test
87 public void testSubstring() {
88 StringBuilder2 b = new StringBuilder2("abcdef");
89 assertEquals("cd", b.substring(2, 4).toString());
90 }
91
92 @Test
93 public void testRightTrimEmpty() {
94 assertEquals(0, new StringBuilder2("").rightTrim().length());
95 }
96
97 @Test
98 public void testRightTrimNoSpace() {
99 assertEquals(3, new StringBuilder2("abc").rightTrim().length());
100 }
101
102 @Test
103 public void testRightTrimSpacesOnly() {
104 assertEquals(0, new StringBuilder2(" ").rightTrim().length());
105 }
106
107 @Test
108 public void testRightTrimSpacesAfterLetters() {
109 assertEquals(3, new StringBuilder2("abc ").rightTrim().length());
110 }
111 }