1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.lang3.text.translate;
19
20 import static org.junit.jupiter.api.Assertions.assertEquals;
21
22 import java.io.IOException;
23 import java.io.StringWriter;
24
25 import org.apache.commons.lang3.AbstractLangTest;
26 import org.junit.jupiter.api.Test;
27
28
29
30
31 @Deprecated
32 class LookupTranslatorTest extends AbstractLangTest {
33
34 @Test
35 void testBasicLookup() throws IOException {
36 final LookupTranslator lt = new LookupTranslator(new CharSequence[][] { { "one", "two" } });
37 final StringWriter out = new StringWriter();
38 final int result = lt.translate("one", 0, out);
39 assertEquals(3, result, "Incorrect code point consumption");
40 assertEquals("two", out.toString(), "Incorrect value");
41 }
42
43
44 @Test
45 void testLang882() throws IOException {
46 final LookupTranslator lt = new LookupTranslator(new CharSequence[][] { { new StringBuffer("one"), new StringBuffer("two") } });
47 final StringWriter out = new StringWriter();
48 final int result = lt.translate(new StringBuffer("one"), 0, out);
49 assertEquals(3, result, "Incorrect code point consumption");
50 assertEquals("two", out.toString(), "Incorrect value");
51 }
52
53 @Test
54 void testSupplementaryKey() throws IOException {
55 final String key = new String(Character.toChars(0x1D54F));
56 final LookupTranslator lt = new LookupTranslator(new CharSequence[][] { { key, "X" } });
57 final StringWriter out = new StringWriter();
58 final int result = lt.translate(key, 0, out);
59 assertEquals(1, result, "Incorrect code point consumption");
60 assertEquals("X", out.toString(), "Incorrect value");
61
62 assertEquals("XY", lt.translate(key + "Y"), "Trailing character must be preserved");
63 }
64
65 }