View Javadoc
1   package org.wikimedia.search.extra.analysis.homoglyph;
2   
3   import static java.util.Arrays.asList;
4   import static java.util.Collections.unmodifiableList;
5   import static org.junit.Assert.assertEquals;
6   
7   import java.util.List;
8   
9   import org.junit.Before;
10  import org.junit.Test;
11  
12  public class TranslationTableTest {
13      private TranslationTable translationTable;
14      private List<GlyphPair> testHomoglyphPairs;
15  
16      @Before
17      public void setUp() {
18          this.testHomoglyphPairs = unmodifiableList(asList(
19                  new GlyphPair("hi", "j"),
20                  new GlyphPair("ab", "cd"),
21                  new GlyphPair("e", "fg"),
22                  new GlyphPair("k", "l")
23          ));
24          this.translationTable = new TranslationTable(TranslationTableDictionaries.LATIN_REG, TranslationTableDictionaries.CYR_REG, testHomoglyphPairs);
25      }
26  
27      @Test
28      public void testSortOrderScriptOneToScriptTwo() {
29          List<GlyphPair> actual = translationTable.scriptOneToScriptTwoList(testHomoglyphPairs);
30          List<GlyphPair> expected = asList(
31                  new GlyphPair("ab", "cd"),
32                  new GlyphPair("hi", "j"),
33                  new GlyphPair("e", "fg"),
34                  new GlyphPair("k", "l")
35          );
36          assertEquals(expected.toString(), actual.toString());
37      }
38  
39      @Test
40      public void testSortOrderScriptTwoToScriptOne() {
41          List<GlyphPair> actual = translationTable.scriptTwoToScriptOneList(testHomoglyphPairs);
42          List<GlyphPair> expected = unmodifiableList(asList(
43                  new GlyphPair("cd", "ab"),
44                  new GlyphPair("fg", "e"),
45                  new GlyphPair("j", "hi"),
46                  new GlyphPair("l", "k")
47          ));
48          assertEquals(expected.toString(), actual.toString());
49      }
50  }