eba2da4eb16ae118c4f0fbd8e83526e22d5d976c
[jalview.git] / test / jalview / util / StringUtilsTest.java
1 package jalview.util;
2
3 import static org.junit.Assert.assertTrue;
4
5 import java.util.Arrays;
6
7 import org.junit.Test;
8
9 public class StringUtilsTest
10 {
11
12   @Test
13   public void testInsertCharAt()
14   {
15     char[] c1 = "ABC".toCharArray();
16     char[] expected = new char[]
17     { 'A', 'B', 'C', 'w', 'w' };
18     assertTrue(Arrays.equals(expected,
19             StringUtils.insertCharAt(c1, 3, 2, 'w')));
20     expected = new char[]
21     { 'A', 'B', 'C', 'w', 'w' };
22     assertTrue(Arrays.equals(expected,
23             StringUtils.insertCharAt(c1, 4, 2, 'w')));
24     assertTrue(Arrays.equals(expected,
25             StringUtils.insertCharAt(c1, 5, 2, 'w')));
26     assertTrue(Arrays.equals(expected,
27             StringUtils.insertCharAt(c1, 6, 2, 'w')));
28     assertTrue(Arrays.equals(expected,
29             StringUtils.insertCharAt(c1, 7, 2, 'w')));
30   }
31
32   @Test
33   public void testDeleteChars()
34   {
35     char[] c1 = "ABC".toCharArray();
36
37     // delete second position
38     assertTrue(Arrays.equals(new char[]
39     { 'A', 'C' }, StringUtils.deleteChars(c1, 1, 2)));
40
41     // delete positions 1 and 2
42     assertTrue(Arrays.equals(new char[]
43     { 'C' }, StringUtils.deleteChars(c1, 0, 2)));
44
45     // delete positions 1-3
46     assertTrue(Arrays.equals(new char[]
47     {}, StringUtils.deleteChars(c1, 0, 3)));
48
49     // delete position 3
50     assertTrue(Arrays.equals(new char[]
51     { 'A', 'B' }, StringUtils.deleteChars(c1, 2, 3)));
52
53     // out of range deletion is ignore
54     assertTrue(Arrays.equals(c1, StringUtils.deleteChars(c1, 3, 4)));
55   }
56 }