1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.util;
21
22 import org.apache.myfaces.tobago.internal.util.StringUtils;
23 import org.junit.Assert;
24 import org.junit.Test;
25
26 public class RangeParserUnitTest {
27
28 @Test
29 public void test() {
30
31 int[] ints = {0, 5, 10};
32 String s = "0,5,10";
33 checkEquals(ints, StringUtils.getIndices(s));
34 s = "0, 5, 10";
35 checkEquals(ints, StringUtils.getIndices(s));
36 s = " 0 , 5 , 10 ";
37 checkEquals(ints, StringUtils.getIndices(s));
38
39 ints = new int[] {3, 4, 5, 6, 7, 15, 16, 17};
40 s = "3-7,15-17";
41 checkEquals(ints, StringUtils.getIndices(s));
42 s = "3-5,6,7,15,16-17";
43 checkEquals(ints, StringUtils.getIndices(s));
44 s = "3-5, 6, 7, 15, 16 - 17 ";
45 checkEquals(ints, StringUtils.getIndices(s));
46
47 ints = new int[] {3, 4, 5, 6, 7, 15, 14, 13};
48 s = "3-7,15-13";
49 checkEquals(ints, StringUtils.getIndices(s));
50 s = "3 - 7, 15 - 13";
51 checkEquals(ints, StringUtils.getIndices(s));
52 }
53
54 private void checkEquals(int[] ints, int[] indices) {
55 Assert.assertTrue(ints.length == indices.length);
56 for (int i = 0; i < ints.length; i++) {
57 Assert.assertTrue(ints[i] == indices[i]);
58 }
59 }
60 }