package org.marketcetera.util.misc; import org.junit.Test; import org.marketcetera.util.test.TestCaseBase; import static org.junit.Assert.*; import static org.marketcetera.util.test.UnicodeData.*; /** * @author tlerios@marketcetera.com * @since 0.6.0 * @version $Id: StringUtilsTest.java 16154 2012-07-14 16:34:05Z colin $ */ /* $License$ */ public class StringUtilsTest extends TestCaseBase { private static void single (String s, int[] ucps) { assertEquals(ucps.length,StringUtils.lengthUCP(s)); assertEquals(s,StringUtils.fromUCP(ucps)); assertArrayEquals(ucps,StringUtils.toUCPArray(s)); String c=StringUtils.fromUCP(ucps[0]); assertEquals(1,StringUtils.lengthUCP(c)); assertEquals(ucps[0],c.codePointAt(0)); } @Test public void all() { assertNull(StringUtils.toUCPArray(null)); single(SPACE,SPACE_UCPS); single(HELLO_EN,HELLO_EN_UCPS); single(LANGUAGE_NO,LANGUAGE_NO_UCPS); single(HELLO_GR,HELLO_GR_UCPS); single(HOUSE_AR,HOUSE_AR_UCPS); single(GOODBYE_JA,GOODBYE_JA_UCPS); single(GOATS_LNB,GOATS_LNB_UCPS); single(G_CLEF_MSC,G_CLEF_MSC_UCPS); } @Test public void toUCPArrayStr() { assertNull(StringUtils.toUCPArrayStr(null)); assertEquals("U+10088 U+20 U+10089", StringUtils.toUCPArrayStr(GOATS_LNB)); assertEquals("U+1D11E", StringUtils.toUCPArrayStr(G_CLEF_MSC)); assertEquals("U+3055 U+3088 U+3046 U+306A U+3089", StringUtils.toUCPArrayStr(GOODBYE_JA)); } @Test public void isValid() { assertTrue(StringUtils.isValid(G_CLEF_MSC_UCPS[0])); assertFalse(StringUtils.isValid(0x10000000)); assertFalse(StringUtils.isValid(0xD801)); } }