Gridarta Editor
FilterCodecUtilsTest.java
Go to the documentation of this file.
1 package net.sf.gridarta.model.filter;
2 
3 import org.jetbrains.annotations.NotNull;
4 import org.junit.Assert;
5 import org.junit.Test;
6 
10 @SuppressWarnings("JavaDoc")
11 public class FilterCodecUtilsTest {
12 
13  @Test
14  public void codec1() {
15  check("abc", "abc");
16  }
17 
18  @Test
19  public void codec2() {
20  check("\0\1\2\r\n !%\\,\u007F\u0080äöü(),=", "%0000%0001%0002%000D%000A !%0025\\%002C%007F%0080äöü(%0029%002C%003D");
21  }
22 
23  @Test
24  public void decodeString1() {
25  final StringBuilder sb = new StringBuilder("abc,def");
26  Assert.assertEquals("abc", FilterCodecUtils.decodeString(sb));
27  Assert.assertEquals(",def", sb.toString());
28  }
29 
30  @Test
31  public void decodeString2() {
32  final StringBuilder sb = new StringBuilder("abc)def");
33  Assert.assertEquals("abc", FilterCodecUtils.decodeString(sb));
34  Assert.assertEquals(")def", sb.toString());
35  }
36 
37  @Test
38  public void decodeString3() {
39  final StringBuilder sb = new StringBuilder("abc=def");
40  Assert.assertEquals("abc", FilterCodecUtils.decodeString(sb));
41  Assert.assertEquals("=def", sb.toString());
42  }
43 
44  @Test(expected = StringIndexOutOfBoundsException.class)
45  public void decodeString4() {
46  final StringBuilder sb = new StringBuilder("%123");
48  Assert.fail();
49  }
50 
51  @Test(expected = NumberFormatException.class)
52  public void decodeString5() {
53  final StringBuilder sb = new StringBuilder("%123g");
55  Assert.fail();
56  }
57 
58  private static void check(@NotNull final String string, @NotNull final String expectedString) {
59  final StringBuilder sb = new StringBuilder();
60  FilterCodecUtils.encodeString(sb, string);
61  Assert.assertEquals(expectedString, sb.toString());
62 
63  Assert.assertEquals(string, FilterCodecUtils.decodeString(sb));
64  Assert.assertEquals(0, sb.length());
65  }
66 
67 }
static void encodeString(@NotNull final StringBuilder sb, @NotNull final String string)
Encodes a string configuration to a string builder.
Utility class for codec related functions.
static void check(@NotNull final String string, @NotNull final String expectedString)
static String decodeString(@NotNull final StringBuilder sb)
Decodes a string from a string builder.