package kr.kangwoo.util; import java.util.ArrayList; import java.util.List; import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Test; public class StringUtilsTests { @Before public void setUp() throws Exception { } @After public void tearDown() throws Exception { } @Test public void camelString() { Assert.assertEquals(StringUtils.camelString("ITEM_CODE", true), "ItemCode"); Assert.assertEquals(StringUtils.camelString("ITEM_CODE_", true), "ItemCode"); Assert.assertEquals(StringUtils.camelString("ITEM_CODE", false), "itemCode"); Assert.assertEquals(StringUtils.camelString("I_TEM_CODE", true), "ITemCode"); } @Test public void repeat() { Assert.assertNull(StringUtils.repeat(null, -1)); Assert.assertNull(StringUtils.repeat(null, 0)); Assert.assertNull(StringUtils.repeat(null, 1)); Assert.assertEquals(StringUtils.repeat("", -1), ""); Assert.assertEquals(StringUtils.repeat("", 0), ""); Assert.assertEquals(StringUtils.repeat("", 1), ""); Assert.assertEquals(StringUtils.repeat("han", -1), ""); Assert.assertEquals(StringUtils.repeat("han", 0), ""); Assert.assertEquals(StringUtils.repeat("han", 1), "han"); Assert.assertEquals(StringUtils.repeat("han", 2), "hanhan"); } @Test public void isBlank() { Assert.assertEquals(StringUtils.isBlank(null), true); Assert.assertEquals(StringUtils.isBlank(""), true); Assert.assertEquals(StringUtils.isBlank(" "), true); Assert.assertEquals(StringUtils.isBlank("han"), false); Assert.assertEquals(StringUtils.isBlank(" han "), false); } @Test public void isNotBlank() { Assert.assertEquals(StringUtils.isNotBlank(null), false); Assert.assertEquals(StringUtils.isNotBlank(""), false); Assert.assertEquals(StringUtils.isNotBlank(" "), false); Assert.assertEquals(StringUtils.isNotBlank("han"), true); Assert.assertEquals(StringUtils.isNotBlank(" han "), true); } @Test public void isEmpty() { Assert.assertEquals(StringUtils.isEmpty(null), true); Assert.assertEquals(StringUtils.isEmpty(""), true); Assert.assertEquals(StringUtils.isEmpty(" "), false); Assert.assertEquals(StringUtils.isEmpty("han"), false); Assert.assertEquals(StringUtils.isEmpty(" han "), false); } @Test public void isNotEmpty() { Assert.assertEquals(StringUtils.isNotEmpty(null), false); Assert.assertEquals(StringUtils.isNotEmpty(""), false); Assert.assertEquals(StringUtils.isNotEmpty(" "), true); Assert.assertEquals(StringUtils.isNotEmpty("han"), true); Assert.assertEquals(StringUtils.isNotEmpty(" han "), true); } @Test public void trim() { Assert.assertNull(StringUtils.trim(null)); Assert.assertEquals(StringUtils.trim(""), ""); Assert.assertEquals(StringUtils.trim(" "), ""); Assert.assertEquals(StringUtils.trim("han"), "han"); Assert.assertEquals(StringUtils.trim(" han "), "han"); } @Test public void trimToNull() { Assert.assertNull(StringUtils.trimToNull(null)); Assert.assertNull(StringUtils.trimToNull("")); Assert.assertNull(StringUtils.trimToNull(" ")); Assert.assertEquals(StringUtils.trimToNull("han"), "han"); Assert.assertEquals(StringUtils.trimToNull(" han "), "han"); } @Test public void trimToEmpty() { Assert.assertEquals(StringUtils.trimToEmpty(null), ""); Assert.assertEquals(StringUtils.trimToEmpty(""), ""); Assert.assertEquals(StringUtils.trimToEmpty(" "), ""); Assert.assertEquals(StringUtils.trimToEmpty("han"), "han"); Assert.assertEquals(StringUtils.trimToEmpty(" han "), "han"); } @Test public void defaultIfNull() { String[] strArray = {"", "A", "ÇѱÛ"}; for (int i = 0; i < strArray.length; i++) { Assert.assertEquals(StringUtils.defaultIfNull(null, strArray[i]), strArray[i]); Assert.assertEquals(StringUtils.defaultIfNull("", strArray[i]), ""); Assert.assertEquals(StringUtils.defaultIfNull(" ", strArray[i]), " "); Assert.assertEquals(StringUtils.defaultIfNull("han", strArray[i]), "han"); Assert.assertEquals(StringUtils.defaultIfNull(" han ", strArray[i]), " han "); } } @Test public void defaultIfNull2() { Assert.assertEquals(StringUtils.defaultIfNull(null), ""); Assert.assertEquals(StringUtils.defaultIfNull(""), ""); Assert.assertEquals(StringUtils.defaultIfNull(" "), " "); Assert.assertEquals(StringUtils.defaultIfNull("han"), "han"); Assert.assertEquals(StringUtils.defaultIfNull(" han "), " han "); } @Test public void defaultIfBlank() { String[] strArray = {"", "A", "ÇѱÛ"}; for (int i = 0; i < strArray.length; i++) { Assert.assertEquals(StringUtils.defaultIfBlank(null, strArray[i]), strArray[i]); Assert.assertEquals(StringUtils.defaultIfBlank("", strArray[i]), strArray[i]); Assert.assertEquals(StringUtils.defaultIfBlank(" ", strArray[i]), strArray[i]); Assert.assertEquals(StringUtils.defaultIfBlank("han", strArray[i]), "han"); Assert.assertEquals(StringUtils.defaultIfBlank(" han ", strArray[i]), " han "); } } @Test public void defaultIfBlank2() { Assert.assertEquals(StringUtils.defaultIfBlank(null), ""); Assert.assertEquals(StringUtils.defaultIfBlank(""), ""); Assert.assertEquals(StringUtils.defaultIfBlank(" "), ""); Assert.assertEquals(StringUtils.defaultIfBlank("han"), "han"); Assert.assertEquals(StringUtils.defaultIfBlank(" han "), " han "); } @Test public void equals() { Assert.assertEquals(StringUtils.equals(null, null), true); Assert.assertEquals(StringUtils.equals(null, ""), false); Assert.assertEquals(StringUtils.equals("", null), false); Assert.assertEquals(StringUtils.equals(null, "han"), false); Assert.assertEquals(StringUtils.equals("han", null), false); Assert.assertEquals(StringUtils.equals("han", "han"), true); Assert.assertEquals(StringUtils.equals("han", "HAN"), false); } @Test public void equalsIgnoreCase() { Assert.assertEquals(StringUtils.equalsIgnoreCase(null, null), true); Assert.assertEquals(StringUtils.equalsIgnoreCase(null, ""), false); Assert.assertEquals(StringUtils.equalsIgnoreCase("", null), false); Assert.assertEquals(StringUtils.equalsIgnoreCase(null, "han"), false); Assert.assertEquals(StringUtils.equalsIgnoreCase("han", null), false); Assert.assertEquals(StringUtils.equalsIgnoreCase("han", "han"), true); Assert.assertEquals(StringUtils.equalsIgnoreCase("han", "HAN"), true); } @Test public void startsWith() { Assert.assertEquals(StringUtils.startsWith(null, "HAN"), false); Assert.assertEquals(StringUtils.startsWith(null, null), false); Assert.assertEquals(StringUtils.startsWith("HAN", null), false); Assert.assertEquals(StringUtils.startsWith("han", "h"), true); Assert.assertEquals(StringUtils.startsWith("han", "a"), false); } @Test public void startsWith2() { Assert.assertEquals(StringUtils.startsWith(null, "han", 0), false); Assert.assertEquals(StringUtils.startsWith(null, null, 0), false); Assert.assertEquals(StringUtils.startsWith("han", null, 0), false); Assert.assertEquals(StringUtils.startsWith("han", "h", 0), true); Assert.assertEquals(StringUtils.startsWith("han", "a", 0), false); Assert.assertEquals(StringUtils.startsWith("han", "a", 1), true); } @Test public void endsWith() { Assert.assertEquals(StringUtils.endsWith(null, "HAN"), false); Assert.assertEquals(StringUtils.endsWith(null, null), false); Assert.assertEquals(StringUtils.endsWith("HAN", null), false); Assert.assertEquals(StringUtils.endsWith("han", "h"), false); Assert.assertEquals(StringUtils.endsWith("han", "n"), true); } @Test public void contains() { Assert.assertEquals(StringUtils.contains(null, "HAN"), false); Assert.assertEquals(StringUtils.contains(null, null), false); Assert.assertEquals(StringUtils.contains("HAN", null), false); Assert.assertEquals(StringUtils.contains("han", ""), true); Assert.assertEquals(StringUtils.contains("han", "h"), true); Assert.assertEquals(StringUtils.contains("han", "H"), false); } @Test public void toUpperCase() { Assert.assertNull(StringUtils.toUpperCase(null)); Assert.assertEquals(StringUtils.toUpperCase("han"), "HAN"); Assert.assertEquals(StringUtils.toUpperCase("hAn"), "HAN"); Assert.assertEquals(StringUtils.toUpperCase("HAN"), "HAN"); } @Test public void toUpperCase2() { Assert.assertNull(StringUtils.toUpperCase(null, 0, 0)); Assert.assertEquals(StringUtils.toUpperCase("han", 0, 1), "Han"); Assert.assertEquals(StringUtils.toUpperCase("han", 0, 2), "HAn"); Assert.assertEquals(StringUtils.toUpperCase("han", 0, 3), "HAN"); } @Test public void toLowerCase() { Assert.assertNull(StringUtils.toLowerCase(null)); Assert.assertEquals(StringUtils.toLowerCase("han"), "han"); Assert.assertEquals(StringUtils.toLowerCase("hAn"), "han"); Assert.assertEquals(StringUtils.toLowerCase("HAN"), "han"); } @Test public void toLowerCase2() { Assert.assertNull(StringUtils.toLowerCase(null, 0, 0)); Assert.assertEquals(StringUtils.toLowerCase("HAN", 0, 1), "hAN"); Assert.assertEquals(StringUtils.toLowerCase("HAN", 0, 2), "haN"); Assert.assertEquals(StringUtils.toLowerCase("HAN", 0, 3), "han"); } @Test public void swapCase() { Assert.assertNull(StringUtils.swapCase(null)); Assert.assertEquals(StringUtils.swapCase("Han"), "hAN"); Assert.assertEquals(StringUtils.swapCase("hAn"), "HaN"); Assert.assertEquals(StringUtils.swapCase("HAN"), "han"); } @Test public void capitalize() { Assert.assertNull(StringUtils.capitalize(null)); Assert.assertEquals(StringUtils.capitalize("Han"), "Han"); Assert.assertEquals(StringUtils.capitalize("han"), "Han"); Assert.assertEquals(StringUtils.capitalize("HAN"), "HAN"); } @Test public void uncapitalize() { Assert.assertNull(StringUtils.capitalize(null)); Assert.assertEquals(StringUtils.uncapitalize("Han"), "han"); Assert.assertEquals(StringUtils.uncapitalize("han"), "han"); Assert.assertEquals(StringUtils.uncapitalize("HAN"), "hAN"); } @Test public void compose() { Assert.assertEquals(StringUtils.compose(null, '.'), ""); Assert.assertEquals(StringUtils.compose(new String[] {"h", "a", "n"}, '.'), "h.a.n"); Assert.assertEquals(StringUtils.compose(new String[] {null, "a", "n"}, '.'), "a.n"); Assert.assertEquals(StringUtils.compose(new String[] {"", "a", "n"}, '.'), "a.n"); Assert.assertEquals(StringUtils.compose(new String[] {"h", "", "n"}, '.'), "h.n"); Assert.assertEquals(StringUtils.compose(new String[] {" ", "a", "n"}, '.'), " .a.n"); } @Test public void compose2() { Assert.assertEquals(StringUtils.compose(null, "."), ""); Assert.assertEquals(StringUtils.compose(new String[] {"h", "a", "n"}, "."), "h.a.n"); Assert.assertEquals(StringUtils.compose(new String[] {null, "a", "n"}, "."), "a.n"); Assert.assertEquals(StringUtils.compose(new String[] {"", "a", "n"}, "."), "a.n"); Assert.assertEquals(StringUtils.compose(new String[] {"h", "", "n"}, "."), "h.n"); Assert.assertEquals(StringUtils.compose(new String[] {" ", "a", "n"}, "."), " .a.n"); } @Test public void join() { Assert.assertEquals(StringUtils.join(null, '-'), ""); Assert.assertEquals(StringUtils.join(new String[] {"h", "a", "n"}, '-'), "h-a-n"); Assert.assertEquals(StringUtils.join(new String[] {null, "a", "n"}, '-'), "-a-n"); Assert.assertEquals(StringUtils.join(new String[] {"", "a", "n"}, '-'), "-a-n"); Assert.assertEquals(StringUtils.join(new String[] {"h", "", "n"}, '-'), "h--n"); Assert.assertEquals(StringUtils.join(new String[] {" ", "a", "n"}, '-'), " -a-n"); } @Test public void join2() { Assert.assertEquals(StringUtils.join(null, "-"), ""); Assert.assertEquals(StringUtils.join(new String[] {"h", "a", "n"}, "-"), "h-a-n"); Assert.assertEquals(StringUtils.join(new String[] {null, "a", "n"}, "-"), "-a-n"); Assert.assertEquals(StringUtils.join(new String[] {"", "a", "n"}, "-"), "-a-n"); Assert.assertEquals(StringUtils.join(new String[] {"h", "", "n"}, "-"), "h--n"); Assert.assertEquals(StringUtils.join(new String[] {" ", "a", "n"}, "-"), " -a-n"); } @Test public void split() { Assert.assertNull(StringUtils.split(null, '-')); Assert.assertArrayEquals(StringUtils.split("h-a-n", '-'), new String[] {"h", "a", "n"}); Assert.assertArrayEquals(StringUtils.split("h--n", '-'), new String[] {"h", "", "n"}); } @Test public void split2() { Assert.assertNull(StringUtils.split(null, "-")); Assert.assertArrayEquals(StringUtils.split("h-a-n", "-"), new String[] {"h", "a", "n"}); Assert.assertArrayEquals(StringUtils.split("h--n", "-"), new String[] {"h", "", "n"}); } @Test public void left() { Assert.assertNull(StringUtils.left(null, 0)); Assert.assertEquals(StringUtils.left("", 1), ""); Assert.assertEquals(StringUtils.left("han", -1), ""); Assert.assertEquals(StringUtils.left("han", 0), ""); Assert.assertEquals(StringUtils.left("han", 1), "h"); Assert.assertEquals(StringUtils.left("han", 2), "ha"); Assert.assertEquals(StringUtils.left("han", 11), "han"); } @Test public void right() { Assert.assertNull(StringUtils.right(null, 0)); Assert.assertEquals(StringUtils.right("", 1), ""); Assert.assertEquals(StringUtils.right("han", -1), ""); Assert.assertEquals(StringUtils.right("han", 0), ""); Assert.assertEquals(StringUtils.right("han", 1), "n"); Assert.assertEquals(StringUtils.right("han", 2), "an"); Assert.assertEquals(StringUtils.right("han", 11), "han"); } @Test public void mid() { Assert.assertNull(StringUtils.mid(null, 0, -1)); Assert.assertNull(StringUtils.mid(null, 0, 0)); Assert.assertNull(StringUtils.mid(null, 0, 1)); Assert.assertEquals(StringUtils.mid("han", 0, -1), ""); Assert.assertEquals(StringUtils.mid("han", 0, 1), "h"); Assert.assertEquals(StringUtils.mid("han", 0, 2), "ha"); Assert.assertEquals(StringUtils.mid("han", 0, 11), "han"); Assert.assertEquals(StringUtils.mid("han", 2, 3), "n"); Assert.assertEquals(StringUtils.mid("han", -2, 3), "han"); } @Test public void substring() { Assert.assertNull(StringUtils.substring(null, 0)); Assert.assertEquals(StringUtils.substring("", 1), ""); Assert.assertEquals(StringUtils.substring("han", -1), ""); Assert.assertEquals(StringUtils.substring("han", 0), "han"); Assert.assertEquals(StringUtils.substring("han", 1), "an"); Assert.assertEquals(StringUtils.substring("han", 615), ""); } @Test public void substring2() { Assert.assertNull(StringUtils.substring(null, 0, -1)); Assert.assertNull(StringUtils.substring(null, 0, 0)); Assert.assertNull(StringUtils.substring(null, 0, 1)); Assert.assertEquals(StringUtils.substring("", 0, -1), ""); Assert.assertEquals(StringUtils.substring("", 0, -1), ""); Assert.assertEquals(StringUtils.substring("", 0, -1), ""); Assert.assertEquals(StringUtils.substring("han", 1, 2), "a"); Assert.assertEquals(StringUtils.substring("han", 1, 615), "an"); } @Test public void substringBefore() { Assert.assertNull(StringUtils.substringBefore(null, "a")); Assert.assertEquals(StringUtils.substringBefore("", "a"), ""); Assert.assertEquals(StringUtils.substringBefore("han", null), "han"); Assert.assertEquals(StringUtils.substringBefore("han", ""), ""); Assert.assertEquals(StringUtils.substringBefore("hanhan", "a"), "h"); Assert.assertEquals(StringUtils.substringBefore("hanhan", "g"), "hanhan"); } @Test public void substringBeforeLast() { Assert.assertNull(StringUtils.substringBeforeLast(null, "a")); Assert.assertEquals(StringUtils.substringBeforeLast("", "a"), ""); Assert.assertEquals(StringUtils.substringBeforeLast("han", null), "han"); Assert.assertEquals(StringUtils.substringBeforeLast("han", ""), "han"); Assert.assertEquals(StringUtils.substringBeforeLast("hanhan", "a"), "hanh"); Assert.assertEquals(StringUtils.substringBeforeLast("hanhan", "g"), "hanhan"); } @Test public void substringAfter() { Assert.assertNull(StringUtils.substringAfter(null, "a")); Assert.assertEquals(StringUtils.substringAfter("", "a"), ""); Assert.assertEquals(StringUtils.substringAfter("han", null), ""); Assert.assertEquals(StringUtils.substringAfter("han", ""), "han"); Assert.assertEquals(StringUtils.substringAfter("hanhan", "a"), "nhan"); Assert.assertEquals(StringUtils.substringAfter("hanhan", "g"), ""); } @Test public void substringAfterLast() { Assert.assertNull(StringUtils.substringAfterLast(null, "a")); Assert.assertEquals(StringUtils.substringAfterLast("", "a"), ""); Assert.assertEquals(StringUtils.substringAfterLast("han", null), ""); Assert.assertEquals(StringUtils.substringAfterLast("han", ""), ""); Assert.assertEquals(StringUtils.substringAfterLast("hanhan", "a"), "n"); Assert.assertEquals(StringUtils.substringAfterLast("hanhan", "g"), ""); } @Test public void substringBetween() { Assert.assertNull(StringUtils.substringBetween(null, "<", ">")); Assert.assertNull(StringUtils.substringBetween("hn", null, ">")); Assert.assertNull(StringUtils.substringBetween("hn", "<", null)); Assert.assertEquals(StringUtils.substringBetween("hn", "<", ">"), "a"); Assert.assertEquals(StringUtils.substringBetween("hn", "<", ">"), "a"); } @Test public void wrap() { Assert.assertNull(StringUtils.wrap(null, 0)); String str = "´ç½ÅÀÌ ¾î¶² °ÍÀ» Ãß±¸Çϴ°¡ ÇÏ´Â °ÍÀº ¹®Á¦°¡ ¾Æ´Ï´Ù. ±×°ÍÀÇ ºñ¹ÐÀÌ ¿©±â ½¬°í Àֱ⿡ ´ç½ÅÀº ²÷ÀÓ¾øÀÌ ÈëÀ» ÆÄ¾ß ÇÑ´Ù. °á½ÇÀ̳ª Àå¹Ì¸¦ ¾ò±â À§Çؼ±"; List list5 = new ArrayList(); list5.add("´ç½ÅÀÌ"); list5.add("¾î¶² °ÍÀ»"); list5.add("Ãß±¸Çϴ°¡"); list5.add("ÇÏ´Â °ÍÀº"); list5.add("¹®Á¦°¡"); list5.add("¾Æ´Ï´Ù."); list5.add("±×°ÍÀÇ"); list5.add("ºñ¹ÐÀÌ"); list5.add("¿©±â ½¬°í"); list5.add("Àֱ⿡"); list5.add("´ç½ÅÀº"); list5.add("²÷ÀÓ¾øÀÌ"); list5.add("ÈëÀ» ÆÄ¾ß"); list5.add("ÇÑ´Ù."); list5.add("°á½ÇÀ̳ª"); list5.add("Àå¹Ì¸¦"); list5.add("¾ò±â"); list5.add("À§Çؼ±"); List list5test = StringUtils.wrap(str, 5); Assert.assertArrayEquals(list5.toArray(new String[list5.size()]), list5test.toArray(new String[list5test.size()])); } @Test public void curtail() { Assert.assertNull(StringUtils.curtail(null, 0, null)); Assert.assertNull(StringUtils.curtail(null, 0, "...")); Assert.assertEquals(StringUtils.curtail("abcdefghijklmnopqr", 10, null), "abcdefghij"); Assert.assertEquals(StringUtils.curtail("abcdefghijklmnopqr", 10, ".."), "abcdefgh.."); Assert.assertEquals(StringUtils.curtail("ÇѱÛÀ» »ç¶ûÇսôÙ.", 10, null), "ÇѱÛÀ» »ç¶û"); Assert.assertEquals(StringUtils.curtail("ÇѱÛÀ» »ç¶ûÇսôÙ.", 10, ".."), "ÇѱÛÀ» »ç.."); } @Test public void leftPad() { Assert.assertNull(StringUtils.leftPad(null, 0, " ")); Assert.assertEquals(StringUtils.leftPad("han", 5, " "), " han"); Assert.assertEquals(StringUtils.leftPad("han", 5, "123"), "12han"); Assert.assertEquals(StringUtils.leftPad("han", 10, "123"), "1231231han"); Assert.assertEquals(StringUtils.leftPad("han", -1, " "), "han"); } @Test public void rightPad() { Assert.assertNull(StringUtils.rightPad(null, 0, " ")); Assert.assertEquals(StringUtils.rightPad("han", 5, " "), "han "); Assert.assertEquals(StringUtils.rightPad("han", 5, "123"), "han12"); Assert.assertEquals(StringUtils.rightPad("han", 10, "123"), "han1231231"); Assert.assertEquals(StringUtils.rightPad("han", -1, " "), "han"); } }