From a2cae4c8f47e8d86cb588e6db91cb70bbf53bdb3 Mon Sep 17 00:00:00 2001 From: zinzo Date: Thu, 1 Aug 2024 00:12:35 +0900 Subject: [PATCH] Improve test coverage of StringUtils This commit adds tests for `trimArrayElements()` and `delimitedListToStringArray()` in StringUtils. See gh-33298 --- .../util/StringUtilsTests.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java b/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java index e9d055fbd48..69a5536ac98 100644 --- a/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java +++ b/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java @@ -783,4 +783,29 @@ class StringUtilsTests { assertThat(StringUtils.truncate(text, 10)).isEqualTo(truncated); } + @Test + void trimArrayElements() { + assertThat(StringUtils.trimArrayElements(null)).isNull(); + assertThat(StringUtils.trimArrayElements(new String[]{})).isEmpty(); + assertThat(StringUtils.trimArrayElements(new String[]{"", " ", " ", " "})).containsExactly("", "", "", ""); + assertThat(StringUtils.trimArrayElements(new String[]{"\n", "\t ", "\n\t"})).containsExactly("", "", ""); + assertThat(StringUtils.trimArrayElements(new String[]{"a", "b", "c"})).containsExactly("a", "b", "c"); + assertThat(StringUtils.trimArrayElements(new String[]{" a ", " b b ", " cc "})).containsExactly("a", "b b", "cc"); + assertThat(StringUtils.trimArrayElements(new String[]{" a ", "b", " c "})).containsExactly("a", "b", "c"); + assertThat(StringUtils.trimArrayElements(new String[]{null, " a ", null})).containsExactly(null, "a", null); + } + + @Test + void delimitedListToStringArray() { + assertThat(StringUtils.delimitedListToStringArray(null, ",", null)).isEmpty(); + assertThat(StringUtils.delimitedListToStringArray("a,b,c", null, null)).containsExactly("a,b,c"); + assertThat(StringUtils.delimitedListToStringArray("abc", "", null)).containsExactly("a", "b", "c"); + assertThat(StringUtils.delimitedListToStringArray("a,b,c", ",", null)).containsExactly("a", "b", "c"); + assertThat(StringUtils.delimitedListToStringArray("a,b,c", ",", "a")).containsExactly("", "b", "c"); + assertThat(StringUtils.delimitedListToStringArray("a,b,c,", ",", null)).containsExactly("a", "b", "c", ""); + assertThat(StringUtils.delimitedListToStringArray(",a,b,c", ",", null)).containsExactly("", "a", "b", "c"); + assertThat(StringUtils.delimitedListToStringArray("abc", ",", null)).containsExactly("abc"); + assertThat(StringUtils.delimitedListToStringArray("a,b,c", ",", ",")).containsExactly("a", "b", "c"); + assertThat(StringUtils.delimitedListToStringArray("a,,b,,c", ",,", null)).containsExactly("a", "b", "c"); + } }