📄 testcmsstringutil.java
字号:
assertEquals("searchindex", arrayResult[3]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test an empty String:
toSplit = "";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(0, arrayResult.length);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a whitespace String with truncation:
toSplit = " ";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(1, arrayResult.length);
assertEquals(toSplit, arrayResult[0]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a 1 separator-only String
toSplit = ",,";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(0, arrayResult.length);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a 2 separator-only String
toSplit = ",,,,";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(1, arrayResult.length);
assertEquals("", arrayResult[0]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a single token String with starting delimiter
toSplit = ",,token";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(1, arrayResult.length);
assertEquals("token", arrayResult[0]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a single token String with ending delimiter
toSplit = "token,,";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(1, arrayResult.length);
assertEquals("token", arrayResult[0]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
// test a 3 separator-only String
toSplit = ",,,,,,";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(2, arrayResult.length);
assertEquals("", arrayResult[0]);
assertEquals("", arrayResult[1]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
toSplit = ",,a, aber nicht b,,,,b, aber nicht c,,c, but not a,,";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(4, arrayResult.length);
assertEquals("a, aber nicht b", arrayResult[0]);
assertEquals("", arrayResult[1]);
assertEquals("b, aber nicht c", arrayResult[2]);
assertEquals("c, but not a", arrayResult[3]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
delimString = "/delim/";
toSplit = "/delim fake at start/delim//not a delim//delim//delim//delim fake at end";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(4, arrayResult.length);
assertEquals("/delim fake at start", arrayResult[0]);
assertEquals("/not a delim/", arrayResult[1]);
assertEquals("", arrayResult[2]);
assertEquals("/delim fake at end", arrayResult[3]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
toSplit = "/delim fake at start/delim//not a delim//delim//delim//delim";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(4, arrayResult.length);
assertEquals("/delim fake at start", arrayResult[0]);
assertEquals("/not a delim/", arrayResult[1]);
assertEquals("", arrayResult[2]);
assertEquals("/delim", arrayResult[3]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
toSplit = "/delim//delim fake at start/delim//not a delim//delim//delim//delim fake at end/delim/";
arrayResult = CmsStringUtil.splitAsArray(toSplit, delimString);
assertEquals(4, arrayResult.length);
assertEquals("/delim fake at start", arrayResult[0]);
assertEquals("/not a delim/", arrayResult[1]);
assertEquals("", arrayResult[2]);
assertEquals("/delim fake at end", arrayResult[3]);
listResult = CmsStringUtil.splitAsList(toSplit, delimString);
assertEquals(Arrays.asList(arrayResult), listResult);
}
/**
* Tests the basic String substitution.<p>
*/
public void testSubstitute() {
String test, result;
String content = "<a href=\"/opencms/opencms/test.jpg\">";
String search = "/opencms/opencms/";
String replace = "\\${path}";
test = CmsStringUtil.substitute(content, search, replace);
System.out.println(test);
assertEquals(test, "<a href=\"\\${path}test.jpg\">");
test = CmsStringUtil.substitute(test, replace, search);
assertEquals(test, "<a href=\"/opencms/opencms/test.jpg\">");
content = "[0-9]$1/[^a]|/([}>\"'\\[]\\s*)/pics/";
result = "[0-9]$1/[^a]|/([}>\"'\\[]\\s*)/pucs/";
test = CmsStringUtil.substitute(content, "i", "u");
assertEquals(test, result);
content = "/delim//delim fake at start/delim//not a delim//delim//delim//delim fake at end/delim/";
result = "REPLACED!/delim fake at startREPLACED!/not a delim/REPLACED!REPLACED!/delim fake at endREPLACED!";
test = CmsStringUtil.substitute(content, "/delim/", "REPLACED!");
assertEquals(test, result);
}
/**
* Test case for {@link CmsStringUtil#trimToSize(String, int)} method.<p>
*/
public void testTrimToSize() {
String text, result, expected;
text = "This is a short sentence.";
expected = text;
result = CmsStringUtil.trimToSize(text, 75);
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I am a...";
result = CmsStringUtil.trimToSize(text, 10, "...");
assertEquals(expected, result);
text = "I_am_a_short_sentence.";
expected = "I_am_a_sh...";
result = CmsStringUtil.trimToSize(text, 12, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I am...";
result = CmsStringUtil.trimToSize(text, 8, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I...";
result = CmsStringUtil.trimToSize(text, 7, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I...";
result = CmsStringUtil.trimToSize(text, 6, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I...";
result = CmsStringUtil.trimToSize(text, 5, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "I...";
result = CmsStringUtil.trimToSize(text, 4, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "...";
result = CmsStringUtil.trimToSize(text, 3, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = "..";
result = CmsStringUtil.trimToSize(text, 2, "...");
assertEquals(expected, result);
text = "I am a short sentence.";
expected = ".";
result = CmsStringUtil.trimToSize(text, 1, "...");
assertEquals(expected, result);
text = null;
expected = null;
result = CmsStringUtil.trimToSize(text, 10);
assertEquals(expected, result);
}
/**
* Test case for {@link CmsStringUtil#lastIndexOf(String, char[])} method.<p>
*/
public void testLastIndexOf() {
int result;
result = CmsStringUtil.lastIndexOf("This is a Text", CmsStringUtil.SENTENCE_ENDING_CHARS);
assertEquals(-1, result);
result = CmsStringUtil.lastIndexOf("This ! is ? a . Text", CmsStringUtil.SENTENCE_ENDING_CHARS);
assertEquals(14, result);
}
/**
* Test case for {@link CmsStringUtil#trimToSize(String, int, int, String)}.<p>
*/
public void testTrimToSizeText() {
String text, result, expected;
text = "This is a short sentence.";
expected = text;
result = CmsStringUtil.trimToSize(text, 75, 40, " ...");
assertEquals(expected, result);
text = "This is a short sentence. This is a longer sentence at the end of the short sentence.";
expected = "This is a short sentence. This is a longer sentence at the end of the ...";
result = CmsStringUtil.trimToSize(text, 75, 40, " ...");
assertEquals(expected, result);
text = "This is a short sentence. This is a longer sentence at the end of the short sentence.";
expected = "This is a short sentence. ...";
result = CmsStringUtil.trimToSize(text, 75, 75, " ...");
assertEquals(expected, result);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -