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 }