63 lines
1.9 KiB
Java
63 lines
1.9 KiB
Java
|
|
package juloo.keyboard2;
|
|||
|
|
|
|||
|
|
import juloo.keyboard2.ComposeKey;
|
|||
|
|
import juloo.keyboard2.ComposeKeyData;
|
|||
|
|
import juloo.keyboard2.KeyValue;
|
|||
|
|
import org.junit.Test;
|
|||
|
|
import static org.junit.Assert.*;
|
|||
|
|
|
|||
|
|
public class ComposeKeyTest
|
|||
|
|
{
|
|||
|
|
public ComposeKeyTest() {}
|
|||
|
|
|
|||
|
|
@Test
|
|||
|
|
public void composeEquals() throws Exception
|
|||
|
|
{
|
|||
|
|
// From Compose.pre
|
|||
|
|
assertEquals(apply("'e"), KeyValue.makeStringKey("é"));
|
|||
|
|
assertEquals(apply("e'"), KeyValue.makeStringKey("é"));
|
|||
|
|
// From extra.json
|
|||
|
|
assertEquals(apply("Vc"), KeyValue.makeStringKey("Č"));
|
|||
|
|
assertEquals(apply("\\n"), KeyValue.getKeyByName("\\n"));
|
|||
|
|
// From arabic.json
|
|||
|
|
assertEquals(apply("اا"), KeyValue.getKeyByName("combining_alef_above"));
|
|||
|
|
assertEquals(apply("ل۷"), KeyValue.makeStringKey("ڵ"));
|
|||
|
|
assertEquals(apply("۷ل"), KeyValue.makeStringKey("ڵ"));
|
|||
|
|
// From cyrillic.json
|
|||
|
|
assertEquals(apply(",г"), KeyValue.makeStringKey("ӻ"));
|
|||
|
|
assertEquals(apply("г,"), KeyValue.makeStringKey("ӻ"));
|
|||
|
|
assertEquals(apply("ач"), KeyValue.getKeyByName("combining_aigu"));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@Test
|
|||
|
|
public void fnEquals() throws Exception
|
|||
|
|
{
|
|||
|
|
int state = ComposeKeyData.fn;
|
|||
|
|
assertEquals(apply("<", state), KeyValue.makeStringKey("«"));
|
|||
|
|
assertEquals(apply("{", state), KeyValue.makeStringKey("‹"));
|
|||
|
|
// Named key
|
|||
|
|
assertEquals(apply("1", state), KeyValue.getKeyByName("f1"));
|
|||
|
|
assertEquals(apply(" ", state), KeyValue.getKeyByName("nbsp"));
|
|||
|
|
// Named 1-char key
|
|||
|
|
assertEquals(apply("ய", state), KeyValue.makeStringKey("௰", KeyValue.FLAG_SMALLER_FONT));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@Test
|
|||
|
|
public void stringKeys() throws Exception
|
|||
|
|
{
|
|||
|
|
int state = ComposeKeyData.shift;
|
|||
|
|
assertEquals(apply("𝕨", state), KeyValue.makeStringKey("𝕎"));
|
|||
|
|
assertEquals(apply("𝕩", state), KeyValue.makeStringKey("𝕏"));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
KeyValue apply(String seq)
|
|||
|
|
{
|
|||
|
|
return ComposeKey.apply(ComposeKeyData.compose, seq);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
KeyValue apply(String seq, int state)
|
|||
|
|
{
|
|||
|
|
return ComposeKey.apply(state, seq);
|
|||
|
|
}
|
|||
|
|
}
|