forked from ringcentral/pubnub-jtools
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPubnubUtilTest.java
More file actions
62 lines (48 loc) · 1.66 KB
/
Copy pathPubnubUtilTest.java
File metadata and controls
62 lines (48 loc) · 1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package com.pubnub.api;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
/**
* @author dhleong
*/
public class PubnubUtilTest {
@Test
public void escapeSimple() {
assertEquals("well \\\"hello\\\" there",
PubnubUtil.escapeJava("well \"hello\" there"));
assertEquals("this\\\\that",
PubnubUtil.escapeJava("this\\that"));
}
@Test
public void escapeSequences() {
assertEquals("\\t",
PubnubUtil.escapeJava("\t"));
assertEquals("\\t\\b\\f\\n\\r",
PubnubUtil.escapeJava("\t\b\f\n\r"));
assertEquals("\\tt\\bb\\ff\\nn\\rr",
PubnubUtil.escapeJava("\tt\bb\ff\nn\rr"));
}
@Test
public void escapeUnicode() {
assertEquals("\\u001F", // 31, < 32
PubnubUtil.escapeJava("\u001f"));
assertEquals("\\u0080", // 128, > 128
PubnubUtil.escapeJava("\u0080"));
// but these are fine:
assertEquals("\u0020", // 32
PubnubUtil.escapeJava("\u0020"));
assertEquals("\u007f", // 127
PubnubUtil.escapeJava("\u007f"));
}
@Test
public void escapeSurrogatePairs() {
assertEquals("\\uD83D\\uDE00",
PubnubUtil.escapeJava("\uD83D\uDE00"));
}
@Test
public void escapeUnicodeMulti() {
assertEquals("\\u001F\\u0080\\u0081a\\u0082hi\\u0083",
PubnubUtil.escapeJava("\u001F\u0080\u0081a\u0082hi\u0083"));
assertEquals("\\uD83D\\uDE00a\\u0082hi\\uD83D\\uDE00bye\\u0083",
PubnubUtil.escapeJava("\uD83D\uDE00a\u0082hi\uD83D\uDE00bye\u0083"));
}
}