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");
}
}